如何防止在php mysql中输入重复记录?在插入表之前验证输入。
我目前正在为我的网站建立一个用户注册部分,但是如果在数据库中发现重复的用户名或电子邮件地址,我想向他们显示一个错误。
编辑 这是我到目前为止要插入的行…我将如何在这里实现这两个答案:
<?php if (array_key_exists('confirm',$_POST)) { $Cuser = $_POST['Cuser']; $Cemail = $_POST['Cemail']; $Cpassword = $_POST['Cpassword']; $md5password = md5($_POST['Cpassword']); mysql_query("INSERT INTO tbl_users (`username`,`email`,`password`) VALUES ('$Cuser', '$Cemail', '$md5password')"); echo "Thank you. The user <b>".$Cuser." (".$Cemail.")</b> has been successfully added to the database.<p> <a href='myaccount.php' class='form'>Return</a>"; exit; } ?>
我猜我可以在if … else语句中实现所有功能吗?
我使用了sql语句以及if else语句。
mysql_select_db($database_speedycms, $speedycms); $query_usercheck = "SELECT * FROM tbl_users WHERE username='$user' OR email='$email'"; $usercheck = mysql_query($query_usercheck, $speedycms) or die(mysql_error()); $row_usercheck = mysql_fetch_assoc($usercheck); $totalRows_usercheck = mysql_num_rows($usercheck);
然后
if ( $totalRows_usercheck > 0 )
显示错误消息,以防止添加任何重复项
否则允许数据库插入