2014-04-05 41 views
-2

最近我一直在使用Ajax + php注册时遇到了一些问题。 我最终得出的结论是,所有问题的根源都会在sql请求中的某处。任何人都可以请看看吗?这个sql请求是否正确?

$insert_new_user=mysql_query("INSERT INTO users (fname,lname,email,password,age,sex,city,timereg,frcode) VALUES('$fname_received','$lname_received','$email_received','$password_received','$dob_received','$sex_received','$city_received,'$timepassreg','$frcode')"); 
+0

没有。它依赖于已弃用的方法 – Strawberry

+0

在添加到查询之前,您是否转义用户输入? –

+0

是的,我逃过了输入,当然..怎么样的SQL请求本身?从技术上看似乎是错误的? – OlegArsyonov

回答

0

缺少引号$ city_received

0
$insert_new_user = mysql_query("INSERT INTO `users` (`fname`,`lname`,`email`,`password`,`age`,`sex`,`city`,`timereg`,`frcode`) VALUES ('".$fname_received."','".$lname_received."','".$email_received."','".$password_received."','".$dob_received."','".$sex_received."','".$city_received."','".$timepassreg."','".$frcode."')"); 

你错过了'附近$city_received

另外,还要确保你逃跑的用户输入。

+0

这确实没有改变原始查询 – Alen

+0

它的确如此。检查'city_received'。不明白一些downvoters。投票下来没有阅读 – Companjo

+0

@Companjo:你可能已经指出你添加了一个单一的字符。还有一个非常小的。 –

-1

假设你已经逃脱并检查您的变量有效输入后,就好像你只是忘记了'附近,'$city_received,

<?php 
$insert_new_user = mysql_query(" 
INSERT INTO users 
    (fname, lname, email, password, age, sex, city, timereg, frcode) 
VALUES 
    ('$fname_received', '$lname_received', '$email_received', '$password_received', '$dob_received', '$sex_received', '$city_received', '$timepassreg', '$frcode') 
");