Mysql\u num\u行php/Mysql存在问题

Mysql\u num\u行php/Mysql存在问题,php,mysql,Php,Mysql,我正在努力使电子邮件验证正常工作。所以,我的PHP代码触发了一个查询,如果它有匹配电子邮件的行,则应该返回该查询。如果返回1行,则返回一条错误消息,即代码中有else where,并将有效布尔值设置为false 然而,我得到了这样一个错误“警告:mysql_num_rows()期望参数1是资源,中给出的对象” 我想我使用mysql_num_rows()是错误的,但我对php/mysql还不熟悉:(我似乎不明白 以下是我代码的相关部分 $conn = @mysqli_connect("server

我正在努力使电子邮件验证正常工作。所以,我的PHP代码触发了一个查询,如果它有匹配电子邮件的行,则应该返回该查询。如果返回1行,则返回一条错误消息,即代码中有else where,并将有效布尔值设置为false

然而,我得到了这样一个错误“警告:mysql_num_rows()期望参数1是资源,中给出的对象”

我想我使用mysql_num_rows()是错误的,但我对php/mysql还不熟悉:(我似乎不明白

以下是我代码的相关部分

$conn = @mysqli_connect("server","user","pass","database");

if (!$conn) {
    // Displays an error message
    echo "<p>Database connection failure</p>";
$conn=@mysqli_connect(“服务器”、“用户”、“通行证”、“数据库”);
如果(!$conn){
//显示一条错误消息
echo“数据库连接失败”

”;
////

$sql\u table=“客户”;
$query=“从$sql_表中选择*,其中EMAIL='$EMAIL';
$result=mysqli\u查询($conn,$query);
如果(mysql_num_rows($result)>=1){/您可以使用

$row\u cnt=$result->num\u rows;

mysqli\u num\u行($result)


您使用的是
mysqli
驱动程序,所以请始终使用它。

您将mysqli_*和mysql_*功能混合使用。

试试这个:

if (mysqli_num_rows($result) > 0) { 

    $takenErr = "Email already taken ";
    $valid = false; 

}

有关更多信息,请阅读此

存在两种不同的扩展mysqli_*和mysql_*。您正在尝试将其混合使用。添加mysqli修复了它:)。太好了,很高兴它有帮助:D
if (mysqli_num_rows($result) > 0) { 

    $takenErr = "Email already taken ";
    $valid = false; 

}