使用PHP进行jQuery AJAX表单数据序列化

我被困在我的代码中,我需要将表单中的数据发送到check.php页面然后进行处理。

这是我的代码:

AJAX部分:

  $(document).ready(function(){ var form=$("#myForm"); $("#smt").click(function(){ $.ajax({ type:"POST", url:form.attr("action"), data:form.serialize(), success: function(response){ console.log(response); } }); }); });  

表格:

 

php部分:

 $user=$_POST['user']; $pass=$_POST['pass']; if($user=="tony") { echo "HI ".$user; } else { echo "I dont know you."; } 

试试这个

  $(document).ready(function(){ var form=$("#myForm"); $("#smt").click(function(){ $.ajax({ type:"POST", url:form.attr("action"), data:$("#myForm input").serialize(),//only input success: function(response){ console.log(response); } }); }); }); 

尝试一下,但首先要确定你对服务器的ajax成功响应console.log(响应)是什么

   

   

我只是遇到了同样的问题:你必须在php端反序列化数据。

添加到您的php文件的开头(注意这个简短版本将替换所有其他post变量):

 parse_str($_POST["data"], $_POST); 

更改您的代码如下 –

   

PHP –

  

你的问题出在你的php文件中。 当您使用jquery serialize()方法时,您正在发送一个字符串,因此您不能将其视为数组。 创建一个var_dump($_post) ,你会看到我在说什么。

 Try this its working..