2015-07-04 3 views
3
$rowCount = $conn->query('SELECT COUNT(*) FROM Users'); 
echo '<pre>'.print_r($rowCount,1).'</pre>'; 

возвращается:Адресности общее количество строк в MySQL

mysqli_result Object 
(
    [current_field] => 0 
    [field_count] => 1 
    [lengths] => 
    [num_rows] => 1 
    [type] => 0 
) 

... хотя таблица имеет строк, как я видеть в PHPMyAdmin.

+2

есть только одна строка в 'COUNT (*)'. То, что вы хотите, это результат, а не количество строк. – nomistic

ответ

7

Вы используете print_r для генерации количества строк в запросе. Ваш запрос возвращает только одну строку, которая представляет собой количество строк.

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

$rowCount = $conn->query('SELECT COUNT(*) as rowNumber FROM Users'); 
$row = $rowCount->fetch_assoc(); 
echo $row['rowNumber']; 
+0

Я опоздал на ответ, вы сделали передо мной :( –

-1

запрос возвращает объект, вам нужно получить результат от этого объекта

$sql = "SELECT COUNT(*) AS count FROM Users"; 

if ($res = $mysqli->query($sql)) { 
    /* Fetch object array */ 
    while ($obj = $res->fetch_object()) { 
     echo '<pre>'.print_r($obj->count,1).'</pre>'; 
    } 
    $res->close(); 
} 
Смежные вопросы