Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP PDO错误语法_Php_Mysql_Pdo_Server - Fatal编程技术网

PHP PDO错误语法

PHP PDO错误语法,php,mysql,pdo,server,Php,Mysql,Pdo,Server,有人能帮我吗 我写这篇文章时出错了 $check = $db->prepare("SELECT email FROM user WHERE email = ?"); if($check->rowCount() == 1){ $error = "<div class ='text-danger'> Email Telah Digunakan </div>"; } else { $code = rand(); $status = 0;

有人能帮我吗

我写这篇文章时出错了

$check = $db->prepare("SELECT email FROM user WHERE email = ?");
if($check->rowCount() == 1){
    $error = "<div class ='text-danger'> Email Telah Digunakan </div>"; 
} else {
    $code = rand();
    $status = 0;
    try{
        $query = $db->prepare("INSERT INTO users(first_name,last_name,email,password,gender,code,status) VALUES (?,?,?,?,?,?,?,)");
        $query->execute([$first_name,$last_name,$email,password_hash($password,PASSWORD_DEFAULT),$gender,$code,$status]);   
    }
    catch(PDOException $e){
        echo"error:  " .$e->getMessage();
    }
}
$check=$db->prepare(“从电子邮件=?”的用户选择电子邮件”);
如果($check->rowCount()==1){
$error=“电子邮件Telah Digunakan”;
}否则{
$code=rand();
$status=0;
试一试{
$query=$db->prepare(“插入用户(名字、姓氏、电子邮件、密码、性别、代码、状态)值(?,,,,,,,,,)”;
$query->execute([$first\u name,$last\u name,$email,password\u hash($password,password\u DEFAULT),$gender,$code,$status]);
}
捕获(PDO$e){
回显“错误:”..e->getMessage();
}
}

好的,因此在
值()的列表末尾有一个
,后面没有任何内容,这将导致此类语法错误。以下是固定版本:

$check = $db->prepare("SELECT email FROM user WHERE email = ?");
if($check->rowCount() == 1){
    $error = "<div class ='text-danger'> Email Telah Digunakan </div>"; 
}else{
    $code = rand();
    $status = 0;
    try{
        $query = $db->prepare("INSERT INTO users(first_name,last_name,email,password,gender,code,status) VALUES (?,?,?,?,?,?,?)");
        $query->execute([$first_name,$last_name,$email,password_hash($password,PASSWORD_DEFAULT),$gender,$code,$status]);
    }
    catch(PDOException $e){
        echo "error:  " .$e->getMessage();
    }
}
$check=$db->prepare(“从电子邮件=?”的用户选择电子邮件”);
如果($check->rowCount()==1){
$error=“电子邮件Telah Digunakan”;
}否则{
$code=rand();
$status=0;
试一试{
$query=$db->prepare(“插入用户(名字、姓氏、电子邮件、密码、性别、代码、状态)值(?,,,,,,,,?)”;
$query->execute([$first\u name,$last\u name,$email,password\u hash($password,password\u DEFAULT),$gender,$code,$status]);
}
捕获(PDO$e){
回显“错误:”..e->getMessage();
}
}
您还缺少
if
语句的结束括号。或者你抄错了。我实际上并没有检查全部功能,只是检查了我能找到的语法错误

小小费


如果正确格式化代码,可以更容易地发现语法错误。一个好的代码编辑器也有帮助

您需要在
计数之前执行
绑定
。在
值()的末尾有一个
,后面没有任何内容