ajax没有传递参数到php
问题描述:
我有一个ajax调用一个php文件插入记录到数据库。但是,我没有看到在PHP文件中传递的参数的值,我有用于将值插入数据库的代码。这是我的Ajax调用ajax没有传递参数到php
dataString = 'firstname=Jim&lastname=Smith';
$.ajax(
{
type: "POST",
url: "submit.php",
data: dataString,
});
这是我在我的submit.php文件
$first_name = mysql_escape_string($_POST('firstname'));
$last_name = mysql_escape_string($_POST('lastname'));
$query = "INSERT into USERS (first_name, last_name) VALUES ('$first_name','$last_name');
阅读的价值,但我没有看到在$ FIRST_NAME或$姓氏和任何价值,因此没有记录越来越插入。如果我在submit.php文件中静态定义$ first_name ='Jim'和$ last_name ='Smith',那么我会看到记录被插入到数据库中。任何想法我做错了什么?
答
$_POST
是一个数组,因此您应该使用$_POST['var']
访问其内容,而不是$_POST('var')
。我建议你启用错误报告,这将帮助你更好地进行调试。例如,你的代码会导致一个致命的错误。
$first_name = mysql_escape_string($_POST['firstname']);
$last_name = mysql_escape_string($_POST['lastname']);
答
你可以尝试添加PARAMS中的对象结构,而不是一个字符串,如:
数据:{姓:“吉姆”,姓氏:“史密斯”}
谢谢克里斯蒂安,解决了它。不知道我是如何错过这样一件小事。 – amey1908 2012-04-12 17:36:12