2016-05-09 5 views
0

Это не первый раз, когда я использовал mysqli_fetch_assoc() для получения определенного столбца строки. По какой-то причине я не могу понять, почему он не работает на этот раз. Heres мой код:mysqli_fetch_assoc() ничего не возвращает

$sql = "SELECT * FROM database.table WHERE PushNumber > 0"; 
$result = $conn->query($sql); 

if($result->num_rows > 0) { 
    while($row = mysqli_fetch_array($result)) { 
     // This will loop through each row, now use your loop here 
     $row = mysqli_fetch_assoc($result); 
     $pushNumber = $row['PushNumber']; 
     $followingIDs = $row['FollowingIDs']; 
     $usernameID = $row['Username']; 
     error_log("'$pushNumber", 0); 
     error_log("'$usernameID", 0); 
    } 
} 

Существует одна строка в моей таблице, где PushNumber больше 0 и $pushNumber (тип: int) и $usernameID (тип: string) печатаются в журнале ошибок и как печатаются как: ''И Я НЕ ЗНАЮ ПОЧЕМУ! Нет орфографических ошибок, и я знаю, что факт в этой строке PushNumber равен 1 и Username равен @yo. Любые предложения будут оценены, пожалуйста, помогите. Спасибо!

+0

не достаточно информации, чтобы получить какое-либо надлежащее заключение; однако это может помочь: http://php.net/manual/en/book.mysqli.php – argon

+0

Проверьте наличие ошибок при выполнении. – chris85

+0

Почему бы вам не указать свой точный код. Это недопустимый код. Например error_log ("'$ pushNumber", 0); будет poduce синтаксическая ошибка – e4c5

ответ

3

Кажется, что вы назначаете два совершенно разных набора значений в вашу переменную $ row.

$row = mysqli_fetch_array($result) переносит весь массив в строку $ row, но затем в вашем цикле вы используете $row = mysqli_fetch_assoc($result), чтобы перенести одну запись в строку $ row, которая, скорее всего, выкинет ваш цикл.

Попробуйте это:

if($result->num_rows > 0) 
{ 
    while($row = mysqli_fetch_assoc($result)) 
    { 
     // This will loop through each row, now capture each row's data here 
     $pushNumber = $row['PushNumber']; 
     $followingIDs = $row['FollowingIDs']; 
     $usernameID = $row['Username']; 
     error_log($pushNumber, 0); 
     error_log($usernameID, 0); 
    } 
} 
+0

Спасибо, что хорошо работает! :) –

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