将多个变量从 JS 发送到 PHP

Posted

技术标签:

【中文标题】将多个变量从 JS 发送到 PHP【英文标题】:Sending multiple variables from JS to PHP 【发布时间】:2017-04-26 03:49:34 【问题描述】:

我正在尝试将两个 javascript 变量传递给 php。当只有一个时它正在工作,但我不知道如何一次发送两个。这是我的代码

    function save(nr) 
     var xr = new XMLHttpRequest();
     var url = 'saveColor.php';
     var text = document.getElementById('color'+nr).value;
     var vars1 = "newText="+text;
     var vars2 = "variable="+nr;

     xr.open("POST", url, true);
     xr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
     xr.send(vars1);

所以发送“vars1”变量可以正常工作,但是我应该将“vars2”放在哪里或如何立即发送它们?类似的东西

xr.send(vars1, vars2);

没用。

【问题讨论】:

【参考方案1】:

这样可以正常工作:

var data = new FormData();
data.append('var1', 'var1value');
data.append('var2', 'var2value');

然后像以前一样使用它

xr.send(data);

【讨论】:

如果我使用它,我将能够单独获取它们还是将其视为 PHP 中的一个变量? 它将被转换为字符串var1=var1valuee&var2=var2value。先检查,再发表评论 我检查了它,但仍然无法正常工作。如果我按照您的示例进行操作,是否应该通过 $someVar = $_POST[var1]; 在 PHP 中获取这些变量?等等?因为那不起作用(当我回显时,$someVar 没有显示任何内容) 转储整个 $_POST 变量 回显 $someVar = var_dump($_POST[var1]);如果这就是您的意思,也不会输出任何内容。【参考方案2】:

也可以这样实现

var strURL = "auto_ppm_plan_generation_table.php?ppm_frequency=" + ppm_frequency + "&ppm_month=" + ppm_month + "&ppm_week=" + ppm_week;

【讨论】:

以上是关于将多个变量从 JS 发送到 PHP的主要内容,如果未能解决你的问题,请参考以下文章

将变量从一个 PHP 页面发送到另一个

使用 axios 将 JS 变量发送到 PHP mpdf 文件

在获取数据时将变量发送到 PHP 脚本

为啥 ajax 不将我的 JS 变量发送到 PHP?

如何将本地存储从 JS 发送到 PHP 文件(?)

将 SELECT @ 变量从 SQL 发送到 PHP