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

如何将javascript变量值分配给php变量,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我声明了一个javascript变量 并且无法将该值分配给php变量 $myPhpVar = 'myJavascriptVar'; 我知道Ajax可能是我问题的解决方案。 但是我不知道如何使用Ajax来解决这个问题 <html> <body> <script> var myJavascriptVar = 12345; <?php $myPhpVar='myJavascriptV

我声明了一个javascript变量

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

 $myPhpVar = 'myJavascriptVar'; 
我知道Ajax可能是我问题的解决方案。 但是我不知道如何使用Ajax来解决这个问题

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

var myJavascriptVar=12345;

我想你可以用cookies来做

1) 首先添加一个cookiejQuery插件

2) 然后将窗口宽度存储在cookie变量中

3) 在PHP中访问cookie,如$\u cookie['variable name']


Javascript将在客户端浏览器中解释,您不能将其分配给在服务器上解释的PHP变量


可行的解决方案:您可以通过ajax或表单提交来提交Javascript值。

如果您希望更动态地分配变量,请尝试将ajax与jQuery.post()结合使用

不能直接分配变量的原因是,变量在不同的位置进行处理

这就像在已经烤好的蛋糕上加鸡蛋一样,你应该把鸡蛋送到面包店去买一个有新鸡蛋的蛋糕。这就是这篇文章的目的

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


您应该看到以下链接:

或者您可以使用AJAX请求或POST和GET方法来实现这一点

下面的代码片段可能对您有所帮助:

<?php 
   if(isset($_POST['isSubmit']))
   {
      // do something here
      echo $_POST["name"];
   }
?> 

<form action="<?php $_SERVER['PHP_SELF'];?>" method="POST"> 
Your name: <input type="text" name="name" /> 
<input type="Submit" value="Submit" name="isSubmit"> 
</form> 


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

<script> document.cookie = "myJavascriptVar = " + myJavascriptVar </script>
<?php
     $myPhpVar= $_COOKIE['myJavascriptVar'];
?>
document.cookie=“myJavascriptVar=”+myJavascriptVar

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

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

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

   echo $phpVar;
?>

document.cookie=“myJavascriptVar=12345”;
$msg=“var n=document.getElementById('fil').val;document.write(n);”;
echo$msg;

我有一个更好的解决方案:在.php文件中,我有一个名为javascriptVar的变量。现在,我想将javascriptVar的值赋给名为phpVar的php变量。我只需在script标记中通过document.writeln调用javascript变量即可实现这一点

    <?php 
        echo "<script>
                var javascriptVar = 'success';
             </script>";
        
    
        $phpVar = "<script>document.writeln(javascriptVar);</script>";
    ?>

你确定要给PHP一个JS值吗?PHP在客户端不起作用。您所做的只是从代码中给php一次值。它不会像那样在客户端将其提供给php live了解表单以轻松地将数据发送到php,而不是学习AJAX以获取动态数据。编辑您的答案可能会重复,请添加一些说明。不是新评论。在第二次查看页面之前,此操作不会起作用。PHP代码在服务器上执行,然后将页面提交给浏览器。
块在构建页面时在浏览器中执行。当执行
$myPhpVar=$\u cookie..
时,将不会有任何cookie。这将在第二次查看页面之前不起作用。PHP代码在服务器上执行,然后将页面提交给浏览器。
块在构建页面时在浏览器中执行。当执行
$phpVar=$\u cookie..
时,将不会有任何cookie。感谢您提供此代码片段,它可能会提供一些有限的即时帮助。通过展示为什么这是一个很好的问题解决方案,A将极大地提高它的长期价值,并将使它对未来有其他类似问题的读者更有用。请您的回答添加一些解释,包括您所做的假设。现在,我尽我最大的努力改进我的解决方案以更好地理解。谢谢你,伙计,你救了我一天。非常欢迎@AdilRazaBangash
<script type="text/javascript">
    document.cookie = "myJavascriptVar =12345";
</script>

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

   echo $phpVar;
?>
$msg = "<script>var n=document.getElementById('fil').val; document.write(n);</script>";

echo $msg;
    <?php 
        echo "<script>
                var javascriptVar = 'success';
             </script>";
        
    
        $phpVar = "<script>document.writeln(javascriptVar);</script>";
    ?>