2016-11-07 2 views
-2

я получаю эту ошибку при переходе от mysql_result к mysqli_resultФатальная ошибка: Uncaught Ошибка: Вызов неопределенной функции mysql_result() в

function f_exists($f_uname) { 
    $f_uname = sanitize($f_uname); 
    $conn = @mysqli_connect('localhost','root','','swift') or die($connect_error); 
    $query = mysqli_query($conn,"SELECT COUNT(`f_id`) FROM `flight_users` WHERE `f_uname`= '$f_uname'") or die(mysqli_error($conn)); 


    //here is the problem 
    return (mysql_result($query, 0) == 1) ? true : false; 

}

+1

Вы не можете смешивать и сопоставлять 'mysql_ * 'и' mysqli_ * 'apis. Вы используете PHP 7? Если так, 'mysql_ *' api был полностью удален. –

+0

Могу ли я решить вашу проблему? – rbr94

ответ

1

Не смешивать mysql_* и mysqli_* , Кроме того, вы не можете использовать mysql_result так, как вы его используете, с mysql_*. Просто замените этот

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

со следующим:

if ($query && mysqli_num_rows($query) == 1) { 
    $row = mysqli_fetch_assoc()['count_val']; 
} 

Поэтому вам нужно использовать псевдоним для значения счетчика в вашем заявлении, которое вы всегда должны делать: SELECT COUNT(f_id) as count_val ...

Смотрите эту тему для получения дополнительной информации об эквиваленте mysql_result в mysql_*: MySQLi equivalent of mysql_result()?

Смежные вопросы