INSERT不在mysqli_query()函数中工作

时间:2015-11-06 17:07:18

标签: mysql insert

这里当我尝试插入它时没有回音,所以如果mysqli_query返回False,我会尝试回显一个字符串。所以它不断返回False。我无法弄清楚此代码中的错误。请帮忙!

$query = "INSERT INTO users ('fname', 'lname', 'email', 'password') VALUES ('".$fname."', '".$lname."', '".mysqli_real_escape_string($link, $email)."', '".md5(md5($email)).$pass."')";

$resultquery = mysqli_query($link, $query);

if ($resultquery == FALSE) {              
    echo "not registered"; 
} else {
    echo "registed";
}

1 个答案:

答案 0 :(得分:1)

插入时第一个括号中不需要引号。 另请注意,md5不再是哈希密码的好选择。还尝试使用预准备语句来避免SQL注入。 此外,md5(md5($email)).$pass将生成一个32+字符的字符串,因此请检查密码列是否有足够的长度。

变化:

$query = "INSERT INTO users ('fname', 'lname', 'email', 'password') VALUES ('".$fname."', '".$lname."', '".mysqli_real_escape_string($link, $email)."', '".md5(md5($email)).$pass."')";

要:

$query = "INSERT INTO users (fname, lname, email, password) VALUES ('".$fname."', '".$lname."', '".mysqli_real_escape_string($link, $email)."', '".md5(md5($email)).$pass."')";