这个mysqli语句有什么问题

时间:2015-06-26 08:13:56

标签: php mysql mysqli

我不太确定如何将mysql代码转换为mysqli版本。我一直得到错误:

  

警告:mysql_result()期望参数1是资源,在....中给出的对象

你能帮帮忙吗?感谢。

<?php

function the_user($username) {
    $myqli = mysqli_connect("localhost", "root", "", "sometable");

    $username = sanitize($username);

    $user_query = mysqli_query($myqli, "SELECT COUNT('user_id') FROM 'users' WHERE 'username' = '$username'");

    return (mysql_result($user_query, 0) == 1) ? true : false;  

}
?>

2 个答案:

答案 0 :(得分:4)

名称周围的'个&amp; 名称。应该是 -

SELECT COUNT(user_id) FROM users WHERE username = '$username'

或反击。

混合mysql&amp; mysqli

答案 1 :(得分:0)

而不是mysql_result,您应该使用mysqli之类的mysqli_fetch_array。 你应该使用:

$row = mysqli_fetch_array($user_query, MYSQLI_NUM);
return ($row[0] == 1) ? true : false;  

而不是:

return (mysql_result($user_query, 0) == 1) ? true : false;

当然不要忘记修复sql语法,如前面的回答所述:

$user_query = mysqli_query($myqli, "SELECT COUNT(user_id) FROM users WHERE username = '$username'")