Javascript 使用jQuery将数据发布到服务器时出现问题
我是一名学生,正在使用jQueryMobile开发一个应用程序,并将使用Phonegap进行编译。我想使用jQuery将数据发布到服务器,但在服务器中加载.php文件时遇到问题 我有jQuery的最新版本 在这里,我将用于从表单发布数据的脚本放在下面:Javascript 使用jQuery将数据发布到服务器时出现问题,javascript,ajax,Javascript,Ajax,我是一名学生,正在使用jQueryMobile开发一个应用程序,并将使用Phonegap进行编译。我想使用jQuery将数据发布到服务器,但在服务器中加载.php文件时遇到问题 我有jQuery的最新版本 在这里,我将用于从表单发布数据的脚本放在下面: $(document).ready(function() { var postData = $('#registerForm').serialize(); $('#registerForm').submit(fu
$(document).ready(function() {
var postData = $('#registerForm').serialize();
$('#registerForm').submit(function() {
$.ajax({
type: 'post',
data: postData,
url: 'http://www.smartweb.cat/app/Habana/user_register.php',
success: function(data) {
alert('Usuari registrat correctament.');
},
error: function() {
alert('Hi ha algun problema amb el registre.');
}
});
return false;
});
});
非常感谢,很抱歉我的英语写作。您的帖子数据是空的。在加载DOM时直接检索它们,而不是在提交表单时。您应该移动
var postData
$(document).ready(function() {
//var postData = $('#registerForm').serialize();
$('#registerForm').submit(function() {
var postData = $('#registerForm').serialize(); // here
$.ajax({
//...
});
});
});
首先,我想说的是,你应该使用事先准备好的陈述。 尽管您对用户输入进行了清理(很好),但仍然建议使用准备好的语句。 它不仅有助于提高可读性,而且更安全 确保您的表单发送以下postdata:
{name:"YourName", surname:"Yoursurname",date:"<dateobject>",email:"sample@mail.com",user:"username",password:"password}
== THIS LOOKS OK ==
$name = mysql_real_escape_string($_POST["name"]);
$surname = mysql_real_escape_string($_POST["surname"]);
$date = $_POST["date"];
$email = mysql_real_escape_string($_POST["email"]);
$user = mysql_real_escape_string($_POST["user"]);
$pass = mysql_real_escape_string($_POST["pass"]);
enter code here
确保所有内容都正确,例如数据库中的日期列是字符串还是mysql日期类型。试着失去你的爱
$result = mysql_query("INSERT INTO $tableName (name, surname, date, email, user, pass) VALUES
($name, $surname, $date, $email, $user, $pass)");
哪些问题?请描述什么不起作用!顺便说一句,不要使用用户输入构建SQL命令:使用SQL参数,否则用户将编写的任何SQL代码都将被注入到您执行的命令中。mysql已被弃用,您应该开始使用mysqli。您还应该更喜欢[(序列化数组)
$result = mysql_query("INSERT INTO $tableName (name, surname, date, email, user, pass) VALUES
($name, $surname, $date, $email, $user, $pass)");