INSERT INTO不会工作!

0 mysql sql

我有这个代码的一些问题:

if (count($_POST)) {

$username = mysql_real_escape_string($_POST['username']);
$passwd = mysql_real_escape_string($_POST['passwd']);

mysql_query("INSERT INTO users (username, password)
             VALUES ($username, $passwd)");

}

<form method="post">

<p><input type="text" name="username" /></p>
<p><input type="password" name="passwd" /></p>

<p><input type="submit" value="Register me!" /></p>

</form>
Run Code Online (Sandbox Code Playgroud)

我连接到db
用户列ID是auto_increment

我在sql语句中添加或死掉mysql_error时得到这个:你的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在第2行的')'附近使用正确的语法

cle*_*tus 14

您在插入的值周围缺少引号:

mysql_query("INSERT INTO users (username, password)
             VALUES ('$username', '$passwd')");
Run Code Online (Sandbox Code Playgroud)

  • OP已经在他的代码中有mysql_real_escape_string(). (4认同)
  • 这不是SQL注入的秘诀吗? (2认同)