Как я могу получить последние десять строк в таблице базы данных Mysql? - PullRequest
0 голосов
/ 16 июля 2009

Я использую это

$query = "SELECT * FROM info ORDER BY id DESC limit 10";
$result = @mysql_query( $query );
 $row = mysql_fetch_array($result);
 print_r($row);

но он получает только последний ряд

Ответы [ 2 ]

6 голосов
/ 16 июля 2009

mysql_fetch_array не извлекает массив строк.

Извлекает массив столбцов из одной строки.

Чтобы получить все строки, вы должны запустить его в цикле:

$query = "SELECT * FROM info ORDER BY id DESC limit 10";
$result = @mysql_query( $query );
while ($row = mysql_fetch_array($result))
        print_r($row);
5 голосов
/ 16 июля 2009

Запрос правильный. Если кажется, что вы получаете только одну строку, это является фактором, внешним по отношению к запросу, который вызывает ее: либо у вас есть только одна строка в таблице, либо логика вашего приложения скрыта, так что похоже, что у вас есть только одна строка.

Редактировать: Да, теперь, когда вы опубликовали свой код, мы видим, что логика вашего приложения скрыта. Попробуйте это:

$result = mysql_query($query);
$rows = array();
while($row = mysql_fetch_array($result))
    $rows[] = $row;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...