我正在尝试阻止我正在处理的网站上的用户拥有重复的电子邮件地址。这是我正在使用的方法:
function createUser( $emlAd )
{
$sql = "SELECT FROM Users WHERE email='$emlAd'" ;
$result = mysql_query( $sql ) ;
if( mysql_num_rows( $result ) > 0 )
{
die( "There is already a user with that email!" ) ;
}//end if
//rest of function
}//end createUser
此代码未完成其任务,用户仍然可以使用已使用的电子邮件创建帐户。奇怪的是,当我将 if 条件更改为:
mysql_num_rows( $result ) == 0
用户无法使用任何电子邮件地址创建帐户。为什么当行数大于 0 时,代码不将控制传递给 if block ?
最佳答案
试试这个:
SELECT * FROM...(注意 SELECT 后面的星号).. 我认为您没有通过运行它的方式调用任何记录(除了 Users 中的第一条记录)。我可能是错的,但无论如何,请尝试一下。
关于PHP/MYSQL 重复电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4703714/