如何将javascript变量值分配给php变量

IT技术 javascript php jquery html ajax
2021-02-28 20:20:09

我已经声明了一个javascript 变量

 var myJavascriptVar = 12345;

并且无法将该值分配给php变量;

 $myPhpVar = 'myJavascriptVar'; 

我知道 Ajax 可能是我问题的解决方案。但我不知道如何使用 Ajax 来解决问题。

<html>
    <body>
        <script>
            var myJavascriptVar = 12345;
            <?php $myPhpVar='myJavascriptVar';?> 
        </script>
        <?php echo $myPhpVar; ?>
     </body>
</html>
6个回答

使用 Cookie 是我认为更好的解决方案 -

<script> document.cookie = "myJavascriptVar = " + myJavascriptVar </script>
<?php
     $myPhpVar= $_COOKIE['myJavascriptVar'];
?>
在第二次查看页面之前,这将不起作用。PHP 代码在服务器上执行然后将页面提交给浏览器。<script>构建页面时在浏览器中执行执行时不会有任何 cookie $myPhpVar= $_COOKIE..
2021-04-23 20:20:09

如果您想要更动态的变量分配,请尝试将 ajax 与 jQuery.post() 一起使用。

不能直接分配变量的原因是因为它们在不同的地方处理。

这就像尝试将鸡蛋添加到已经烤好的蛋糕中,相反,您应该将鸡蛋送到面包店以获得带有新鸡蛋的新蛋糕。这就是jQuery 的帖子的目的。

使用额外的数据负载(HTML 或 XML,取决于返回的内容)来提醒请求 test.php 的结果。

$.post( "test.php", { name: "John", time: "2pm" })
  .done(function( data ) {
    alert( "Data Loaded: " + data );
  });

我有一个更好的解决方案:在这里,在 .php 文件中,我有一个名为javascriptVar的变量现在,我想将javascriptVar的值分配给名为phpVar 的php 变量通过脚本标签中通过document.writeln简单地调用javascript变量来做到这一点

    <?php 
        echo "<script>
                var javascriptVar = 'success';
             </script>";
        
    
        $phpVar = "<script>document.writeln(javascriptVar);</script>";
    ?>
感谢您提供此代码片段,它可能会提供一些有限的即时帮助。一个正确的解释将通过展示为什么这是一个很好的问题解决方案来极大地提高其长期value,并将使其对未来有其他类似问题的读者更有用。编辑您的答案以添加一些解释,包括您所做的假设。
2021-04-25 20:20:09
现在,我尽力改进我的解决方案以更好地理解。谢谢
2021-04-29 20:20:09

PHP是服务器端语言,JS是客户端。最好的方法是使用创建一个 cookie javascript,然后读取该 cookiePHP

<script type="text/javascript">
    document.cookie = "myJavascriptVar =12345";
</script>

<?php 
   $phpVar =  $_COOKIE['myJavascriptVar'];

   echo $phpVar;
?>
在第二次查看页面之前,这将不起作用。PHP 代码在服务器上执行然后将页面提交给浏览器。<script>构建页面时在浏览器中执行执行时不会有任何 cookie $phpVar= $_COOKIE..
2021-05-06 20:20:09
$msg = "<script>var n=document.getElementById('fil').val; document.write(n);</script>";

echo $msg;
编辑您的答案,添加一些描述。不是新评论。
2021-05-07 20:20:09