PHP表单数据不复制到数据库

时间:2014-01-11 21:42:37

标签: php mysql pdo

$db1 = new PDO('mysql:host=localhost;
    dbname=jbdb;
    charset=utf8', 'myname', 'nicetrylol');

    //echo $_POST["username"]; test works
    $username =  $_POST["username"];
    $password =  $_POST["password"];
    $password1 = $_POST["password1"];
    $email = $_POST["email"];

    if ($password == $password1){

    $doit = "INSERT INTO 'users'('username', 'password', 'email') 
        VALUES
        (:username, :password, :email)";

    $query = $db1->prepare( $doit );
    $query->execute( array( ':username'=>$username, ':password'=>$password, ':email'=>$email ) );



    echo "The passwords match.";

}

测试表单时没有错误,我收到了正确的回音,但是当我运行"从用户中选择*时;"在mysql控制台中,它返回一个空集。我的代码中是否存在语法错误?

我意识到我的代码未经过适当验证。这只是一个测试案例,因为我学习了PDO语法。我在Windows机器上使用统一服务器运行php 5.5。表中有四列,id设置为自动递增。

1 个答案:

答案 0 :(得分:2)

不要将表名或列包装在引号中:

$doit = "INSERT INTO users (username, password, email)