如何在jquery脚本中嵌入PHP?

如何在jquery脚本中嵌入PHP?,php,jquery,Php,Jquery,我需要将jquery变量的值复制到PHP变量中 我的代码: <script> $(document).ready(function() { var gtext = "Sample text"; console.log(gtext); //I get the gtext printed in console <?php $variablephp = "<script>document.write(gtext)</script>"

我需要将jquery变量的值复制到PHP变量中

我的代码:

<script>
$(document).ready(function() {
  var gtext = "Sample text";
  console.log(gtext); //I get the gtext printed in console     
  <?php   $variablephp = "<script>document.write(gtext)</script>" ?>
  <?php echo $variablephp; ?> // I cannot get printed this php variable       
  <?php echo "hi"; ?> //This echo statement not get printed
});
</script>

$(文档).ready(函数(){
var gtext=“示例文本”;
console.log(gtext);//我在控制台中打印gtext
//我无法打印此php变量
//此回音语句无法打印
});
有人能帮忙吗


我的问题与此不同,因为我想在PHP变量中存储jquery值。不是将PHP变量转换为jquery元素。

您可以这样使用PHP:

<script>
  $(document).ready(function (e) {
    <?php if (isset($variable) && $variable !=''){ ?>
      var abc = 'this';
    <?php }else{ ?>
      var abc = 'that';
  });
</script>

$(文档).ready(函数(e){
var abc=‘this’;
var abc='那';
});

这将是一个php到jquery的方法

<script type="text/javascript">
     $(document).ready(function(){
       var example = '<?php echo $phpVariable; ?>';
     });
</script>

$(文档).ready(函数(){
var示例=“”;
});

好的。所以我想将jquery值存储到PHP变量中的原因是,我想将jquery中得到的值作为PHP中的会话变量

因为我希望这些jquery值对于每个用户都是特定的

jquery本身是否有其他选项可以像PHP中的会话变量一样处理这个jquery值


抱歉,如果这与此无关,因为我对所有这些都不熟悉。

这将是一个jquery-to-php方法

inside index.php

<button id="button1">Press Me</button>

<script type="text/javascript">
    $( "#button1" ).click(function() {
        $.ajax({
            method: "POST",
            url: "server.php",
            data: { name: "John", location: "Boston" }
        }).done(function( msg ) {

        });
    });
</script>

<?php
    //This will display the session data
    if(!empty($_SESSION)) {
        print '<pre>';
        print_r($_SESSION);
        print '</pre>';
    }
?>
按我
$(“#按钮1”)。单击(函数(){
$.ajax({
方法:“张贴”,
url:“server.php”,
数据:{姓名:“约翰”,地点:“波士顿”}
}).done(函数(msg){
});
});
在server.php内部


首先在隐藏字段中设置值,然后使用andy php服务器端方法获取。我发现您不熟悉web的工作方式,php是服务器端语言,而javascrit在您的案例中是客户端语言,您不能在JavaScription中使用php可能与不要混合使用php和JavaScript/jquery重复。它不起作用,应该使用隐藏输入或将数据属性应用到DOM的某个地方来处理。此外,脚本中不能包含脚本。作者在标题php inside jquery中写道,然后在描述jquery inside php lol中写道,您在寻找哪种方法?或者使用下面的方法,这样更安全,因为它会检查以确保变量存在firstvar example='';如果您在jquery中收集数据,那么这很棘手,最好的技巧是使用jQueryAjax将数据发布到php服务器,并使用php存储在会话中,然后在页面刷新中,php会话中将提供数据供您提供有价值的建议。我将尝试一下。是的,当然可以,我添加了一个工作示例,希望它能有所帮助:)我刚刚更新了代码示例,并添加了一个cleanInput()函数帮助您清除输入文本,以防止不需要的代码进入服务器,因为您应该始终将用户提交的数据过滤到某个级别。我认为dom或隐藏输入方法(不同)只有在您希望用户在不刷新页面的情况下查看数据时才有用,但在大多数情况下,这是不需要的无法以这种方式将数据推送到会话
<?php

session_start();

function cleanInput($string)
{
    return preg_replace("/[^A-Za-z0-9 ]/", '', $string);
}

if(!empty($_POST['name'])) {
    $_SESSION['name'] = cleanInput($_POST['name']);
}

if(!empty($_POST['location'])) {
    $_SESSION['location'] = cleanInput($_POST['location']);
}