我试图将两个JavaScript变量传递给PHP变量。
function myFunction(){
var one = 'one';
var two = 'two';
}
在做完我的研究之后,我已经得出结论我将不得不使用AJAX,比如
window.location.href = "myphpfile.php?one=" + one;
window.location.href = "myphpfile.php?two=" + two;
但我无法使用
在PHP中获取变量$_GET['one']
$_GET['two']
我也很困惑我是否两次调用php脚本。是否有传递两个变量的工作方式?我找到了几种传递方法,但没有传递两种方法。
答案 0 :(得分:5)
以下内容将在单个请求中发送两个变量
window.location.href = "myphpfile.php?one=" + one + "&two=" + two;
但window.location.href不是AJAX请求。调用上面的代码将导致浏览器位置更改为myphpfile.php。
答案 1 :(得分:2)
如果您只是想“发射并忘记”这些变量,则不需要AJAX。常见的方式(不优雅,但工作)是使用隐藏框架:
<iframe id="MyFrame" style="display: none;"></iframe>
然后在你的代码中:
function myFunction(){
var one = 'one';
var two = 'two';
document.getElementById("MyFrame").src = "myphpfile.php?one=" + encodeURIComponent(one) + "&two=" + encodeURIComponent(two);
}
这将导致PHP接收请求,但是如果要读取和解析结果,最好使用“真正的”AJAX。
答案 2 :(得分:1)
如果您只想将变量发送到另一个页面,请使用:
window.location.href = "myphpfile.php?one=" + one + "&two=" + two;
如果你想要ajax请求:
$.ajax({
url: "myphpfile.php",
method: 'get',
data : {one:"one",two:"two"},
success:function() {
alert("hi to all");
});