使用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..