检查MySQL是否有重复条目

时间:2016-04-13 01:46:38

标签: php

我正在修改另一个开发人员用PHP构建的Web应用程序。目前,如果用户填写表单并输入已使用的用户名,则会在新页面上显示MySQL错误Duplicate entry 'fred' for key 'username'。我想这样做,以便在同一页面上显示错误消息,所以我试图检查输入的用户名是否与表中的另一个用户名匹配,但我无法让它工作。有什么想法吗?

$username_entry = ($_POST['username']);
$username_match = mysql_query("SELECT * FROM business WHERE username='$username_entry'");

if (($_POST['username']) == $username_match ) {
    // do something
}

1 个答案:

答案 0 :(得分:0)

首先,您没有从查询中返回任何内容以进行检查。我查询数据库以查看是否有任何行返回该用户名。 $ cnt是行数,因此如果大于零,则表示重复。

$username_entry = ($_POST['username']);
    $username_match = mysql_query("SELECT count(*) FROM business WHERE username='$username_entry'");
    $cnt = mysql_num_rows($username_match);

    if (($cnt > 0 ) {
        // do something
    }