如何使用pdo检查数据库中的现有值?

时间:2015-08-11 23:46:48

标签: php mysql pdo

我想使用PHP检查数据库中是否已存在某个值,并阻止该值输入两次。如果该值不存在,那么我们插入。我尝试过使用PHP if语句,但无法正确使用它。我收到了消息:

  

语法错误或访问冲突:1064 SQL语法中出错;检查与MySQL服务器版本对应的手册,以便在第1行的“:email”附近使用正确的语法

这是我的插入脚本:

try
{
    $sql= 'INSERT INTO user_registration SET
           email= :email,
           date = CURDATE()';

    $s = $pdo->prepare($sql);

    $s->bindValue(':email', $_POST['email']);

    //$test=$s->execute();  
}
catch (PDOException $e) 
{
    echo "Problem with script".$db_name.$e->getMessage();
}

try 
{
    $sql=$pdo->query("SELECT email FROM user_registration WHERE email = :email");

    $stmt = $pdo->prepare($sql);

    $stmt->bindParam(':email', $_POST['email']);

    $stmt->execute();
}
catch (PDOException $e)
{
    echo "Problem exisyts".$e->getMessage();
} 

if ($stmt->rowCount > 0) {
    echo "Already exists";
    exit();
}
else
{
    $s->execute();
}

0 个答案:

没有答案