Mysql 检查SQL中是否已存在值

Mysql 检查SQL中是否已存在值,mysql,duplicates,Mysql,Duplicates,我想检查在php表单中输入的值是否已经存在于MySQL数据库中,如果发现相同的值,则显示消息,如果没有发现重复项,则显示ofc DISTABLE消息。 我使用了以下代码: $result = $conn->query("SELECT id FROM tb_cform WHERE u_email = '".$_POST['u_email']."'"); if($result->num_rows == 0) { echo'Mail address was not forund in d

我想检查在php表单中输入的值是否已经存在于MySQL数据库中,如果发现相同的值,则显示消息,如果没有发现重复项,则显示ofc DISTABLE消息。 我使用了以下代码:

$result = $conn->query("SELECT id FROM tb_cform WHERE u_email = '".$_POST['u_email']."'");
if($result->num_rows == 0) {
 echo'Mail address was not forund in database!'; 
} else {
die("Mail address already exist in the database!");
}
然而,无论我输入什么样的电子邮件,我都会不断收到语句中的“else”部分,所以我总是收到“邮件地址已经存在于数据库中!”消息


有什么帮助吗?

哦,明白了,我把整个代码放在了文件的错误位置,它是在我实际运行了一个在数据库中添加电子邮件的查询之后放置的,因此check始终返回找到邮件,我的错误,抱歉

您最好向我们展示
,因为查询似乎没有任何明显的错误。假设您为表和列使用了正确的名称,那么最好添加
ini\u集('display\u errors',1);ini_集(“日志错误”,1);错误报告(E_全部);mysqli_报告(mysqli_报告错误| mysqli_报告严格)到脚本的顶部。这将强制任何
mysqli\uuu
错误生成一个您可以在浏览器上看到的异常,其他错误也将在您的浏览器上看到。为什么要这样做?@riggsfully感谢您的回答。我确信表单工作正常,这是电子邮件的输入字段:
除此之外,$\u POST['u\u email']打印实际输入的电子邮件,“u\u email”是数据库行的正确名称,我对其进行了三次检查。我添加了生成错误的代码,但除了显示电子邮件已在数据库中的消息外,没有显示任何内容。@我希望防止用户多次输入同一封电子邮件,这就是我执行此检查的原因。不过,这仍然是一种有缺陷的方法。