我的 SQL 错误 'field list' 中的未知列 'w'

My SQL error Unknown column 'w' in 'field list'

您好,我是 PhP 的新人,正在尝试学习一些东西。 所以我正在尝试进行 "Simple" 注册以开始学习向数据库添加和提取信息等基础知识。 我有以下代码,但是每当我向字段中添加信息并按提交时,我都会在 return 未知列 'w' 中收到此错误 'field list' 'w' 在名字字段中

<?php
include('db.php');
if(isset($_POST['submit'])){
        //Perform Verifications

        $pass  = $_POST['password'];
        $cpass = $_POST['confirmpassword'];

    if($pass == $cpass)
    {
            //carry on
        $name = mysql_escape_string($_POST['firstname']);
        $uname = mysql_escape_string($_POST['username']);
        $pass = mysql_escape_string($_POST['password']);
        $cpass = mysql_escape_string($_POST['password']);

        mysql_query("INSERT INTO `users`(`id`, `firstname` , `username` , `password` ) VALUES (NULL, `$name`, `$uname` ,`$pass`)") or die(mysql_error());

    }
    else
    {
        echo "Sorry your passwords do not Match.<br />"; 
        exit();
    }

}else{
 $form = <<<EOT
<form action="" method="POST" >
Full Name <input type="text" name="firstname" /> <br />
Username: <input type="text" name="username" /> <br />
Password: <input type="password" name="password" /> <br />
Confirm Password: <input type="password" name="confirmpassword" /> <br />
<input type="submit" value="Register" name="submit" />
</form>
EOT;

echo $form;
}


?>

在 db.php 我只有连接数据库的代码

您必须在 values

中使用引号而不是 backtick
 mysql_query("INSERT INTO `users`(`id`, `firstname` , `username` , `password` ) VALUES (NULL, '".$name."', '".$uname."' ,'".$pass."')") or die(mysql_error());

如果您的 id 是自动 incremented field 则将其从您的查询中删除