从PHP访问JavaScript变量

Chr*_*ong 27 javascript php variables

我需要使用PHP访问JavaScript变量.这是我正在尝试的代码的精简版本,但是没有用:

<script type="text/javascript" charset="utf-8">
    var test = "tester";
</script>

<?php
    echo $_GET['test'];
?>
Run Code Online (Sandbox Code Playgroud)

我对JavaScript和PHP都是全新的,所以我非常感谢任何建议.

更新:好的,我想我简化了太多.我要做的是创建一个表单,在提交时更新Twitter状态.我的表单工作正常,但我还要添加地理位置数据.由于我使用Javascript(特别是Google Geolocation API)来获取位置,因此在提交表单时如何使用PHP访问该信息?

Pan*_*cus 34

简短的回答是你不能.

我不知道任何PHP语法,但我可以告诉你的是,PHP在服务器上执行,JavaScript在客户端(在浏览器上)执行.

你正在做$ _GET,它用于检索表单值:

内置的$ _GET函数用于使用method ="get"收集表单中的值.

换句话说,如果您的页面上有:

<form method="get" action="blah.php">
    <input name="test"></input>
</form>
Run Code Online (Sandbox Code Playgroud)

您的$ _GET调用将检索该输入字段中的值.

那么如何从JavaScript中检索一个值呢?

好吧,你可以将javascript值粘贴在隐藏的表单字段中......

<script type="text/javascript" charset="utf-8">
    var test = "tester";
    // find the 'test' input element and set its value to the above variable
    document.getElementByID("test").value = test;
</script>

... elsewhere on your page ...

<form method="get" action="blah.php">
    <input id="test" name="test" visibility="hidden"></input>
    <input type="submit" value="Click me!"></input>
</form>
Run Code Online (Sandbox Code Playgroud)

然后,当用户单击您的提交按钮时,他/她将向blah.php发出"GET"请求,并发送'test'中的值.

  • 您也可以使用XHR加载页面并将get变量放入自己.这将删除表单提交...基本上,您将加载网址"asdf.php?test ="+ test.value (2认同)