我正在使用AJAX将一些变量发送到PHP表单,该表单将处理它们并将它们放入会话变量中。在下面的代码中,我试图从两个POST变量中获取数据。
如果我原样离开,那么一切都行不通。如果我注释掉一个,那么另一个会起作用,反之亦然。我不确定我在这里做错了什么。
这是将数据发送到要处理的PHP页面的AJAX:
$.ajax({
type: 'POST',
async: false,
data:
{
from_date: from_date,
job_no: job_no,
},
url: 'pnf_post.php', //send variables to this page to be processed
success: function(data){
oTable2.fnReloadAjax('FE_resolved_pnfs.php'); //reload datatables
},
error: function(){
console.log(data);
alert('Error');
}
});
以下是处理AJAX数据的代码:
session_start();
if(isset($_POST['job_no']))
{
$_SESSION['Job_Num'] = $_POST['job_no'];
$_SESSION['Search_By_Date'] = "NO";
}
if(isset($_POST['from_date']))
{
$_SESSION['From_Date'] = $_POST['from_date'];
$_SESSION['Search_By_Date'] = "YES";
}
非常感谢任何帮助
答案 0 :(得分:2)
在这里取出逗号:
job_no: job_no,
并将其更改为:
job_no: job_no
完整剪辑:
data:
{
from_date: from_date,
job_no: job_no
},
答案 1 :(得分:1)
from_date
和job_no
from_date
或job_no
是否存在Search_By_Date
设置为NO
,然后设置为YES
,以便始终YES
您可能想要检查值的计算结果是true还是false,而不是使用isset
来检查数组中是否存在键。
@jk。对于现代浏览器,尾随逗号不是问题。