我正在尝试使用JQuery ajax将数据发送到PHP。但是,我只能将第一个key=value
发送到PHP,第二个key=value
回显为空白。
例如:
functionName="+env works but not username="+username;
如何从JQuery AJAX向PHP传递多个键值对?
Jquery AJAX
var envdata="functionName="+env+",username="+username;
alert(envdata);
if(action == 'R'){
$.ajax({
type: "GET",
url: 'getdata.php',
data: envdata,
success: function(response) {
$("#textarea_message").val(response);
}
访问getdata.php
$env = filter_input(INPUT_GET, 'functionName');
echo $env
$username = filter_input(INPUT_GET, 'username');
echo $username;
答案 0 :(得分:1)
您正在构建data
错误。它基本上等同于URL查询字符串,这意味着您需要使用&
作为分隔符,而不是,
:
var envdata="functionName="+env+"&username="+username;
^---note the &
就url查询参数而言,逗号对PHP没有任何意义,因此,username=foo
将成为functionname
值的一部分。
一个简单的var_dump($_GET)
会向您显示PHP正在看到的内容。当您没有在脚本中获得预期数据时,这应该是您的第一站。
答案 1 :(得分:-1)
了解JSON
$(document).ready(function() {
$('#some_button').on('click', function() {
var checks = new Array();
$("input[name='ls_id']:checked").each(function() {checks.push($(this).val());});
$.ajax({
type: 'POST',
url: "some url",
dataType: 'json',
cache: false,
data: {checks: checks, func: 9},
success: function(data) {
}
});
});
});
的GetData:
$json = json_decode($_POST['checks'], true);
print_r ($json);