避免在MySQL中重复

时间:2014-05-21 19:27:25

标签: php mysql

所以我订阅了订阅系统,我不希望用户能够使用同一封电子邮件订阅两次。

我想到的是使用PHP而没有任何DUPLICATE MySQL的东西,所以我想我可以做:

$checkvar = mysql_query("SELECT email FROM subscribers_list WHERE email = '" . $email . "'");

   if (empty($checkvar)){
        echo "There is no duplicate."; 
       }else { 
        echo "Duplicate found!"; 
    }

但由于某些未知原因,上述代码无法按预期工作。

2 个答案:

答案 0 :(得分:0)

mysql_query返回result非数组或任何数据变量,因此请使用....

if (!(mysql_num_rows($checkvar))>0) { echo "There is no duplicate."; } 
else { echo "Duplicate found!"; }

并尝试格式化代码!

答案 1 :(得分:0)

添加MySQL约束。

它不允许任何代码两次插入相同的电子邮件。

ALTER TABLE subscribers_list ADD CONSTRAINT unique_email UNIQUE (email)