2014-01-25 5 views
0

Я использую скрипт разбиения на страницы PHP/MySQL, который отлично работает, однако мне трудно сортировать результат соответствующим образом.mysql output порядок сортировки

Здесь части моего сценария:

 $link=mysql_connect("localhost","x","x"); 
     mysql_select_db("x",$link); 
     $q="select count(*) \"total\" from entries"; 
     $ros=mysql_query($q,$link); 
     $row=(mysql_fetch_array($ros)); 
     $total=$row['total']; 
     $dis=3; 
     $total_page=ceil($total/$dis); 
     $page_cur=(isset($_GET['page']))?$_GET['page']:1; 
     $k=($page_cur-1)*$dis; 

     $q="select * from entries limit $k,$dis"; 
     $ros=mysql_query($q,$link); 
     while($row=mysql_fetch_array($ros)) 
     { 

Я попытался изменить линию

$q="select count(*) \"total\" from entries"; 

в

$q="select count(*) \"total\" from entries id DESC"; 

однако это, кажется, не работает правильно.

У кого-нибудь есть идея, как я могу получить это исправление и отсортировать элементы по ID?

Некоторая экспертная помощь будет принята с благодарностью - большое вам спасибо.

Пожалуйста, найти оригинальный сценарий, я имею в месте здесь: http://allitstuff.com/php-mysql-pagination-script-download/

+0

вы имели в виду: $ д = "выберите * из записей ограничить $ к, $ Дис ORDER BY DESC ид;" ? – cyberwombat

ответ

1

Coury

select count(*) \"total\" from entries 

только возвращает количество. Вы можете получить только общее количество строк.

Если вы хотите получить данные, пожалуйста, измените свой запрос.

Если вы хотите, чтобы манипулировать с графом только, то попробуйте

$row=mysql_fetch_row($ros); 
$total=$row[0]; 

Edit:

ОП хотите отсортировать записи в обратном порядке. Так что попробуйте

select column_name from entries order by column_name desc; 
+0

Большое спасибо за ваш комментарий. как именно мне нужно это изменить? Как уже упоминалось, это сценарий разбиения на страницы и работает отлично, однако, похоже, порядок сортировки не существует. – David

+0

@ Давид, вы хотите получить счет только ???? –

+1

В основном, мне нужен этот скрипт для работы и просто сортировка записей в обратном порядке (как они есть в настоящее время). Я обновил первый пост и добавил ссылку на исходный скрипт. – David

0

попробуйте

$q="select count(*) as total from entries ORDER BY id DESC;"; 
+0

все равно не имеет значения, так как просто делать счет –

0

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

COUNT (*) возвращает только сосчитать. FOR EXAMPLE

SELECT column_name1,column_name2,count(*) 
FROM table_name 
ORDER BY column_name1,column_name2 ASC|DESC; 
Смежные вопросы