2017-02-15 11 views
0

Пожалуйста, ПОМОГИТЕ - запрос сначала печатает старые новости. Мне нужно изменить порядок.mysql query обратная печать

$query = "SELECT post_title, `post_content`, `post_name` FROM wp_posts WHERE post_date > '$start' AND post_date < '$end' AND post_type='news' AND post_status = 'publish'"; 
    $result = mysql_query($query); 
    $news = ''; 

    if (mysql_numrows($result) <= 0) { 
     echo "No results for - NEWS<br/><br/>"; 
    } else { 
     while ($cnews = mysql_fetch_assoc($result)) { 


      $post_title = $cnews['post_title']; 
      $text = formatText_mt(($cnews['post_content'])); 

      $news = '<a href=“#’.$cnews['post_name'].'">' . ($post_title) . '</a><br><br>'; 
      echo $news; 
     } 
    } 

ответ

1

Вы хотите использовать MySql ORDER BY заказать результаты.

"SELECT post_title, `post_content`, `post_name` FROM wp_posts WHERE post_date > '$start' 
AND post_date < '$end' AND post_type='news' 
AND post_status = 'publish' ORDER BY post_date ASC" 

Вы можете <sql> ORDER BY <column>ASC окончание или DESC окончание.

Read the manual.

Также действительно, СТОП используя MySQL_ функции. Вы должны использовать MySQLi_ или PDO PHP/Database intefaces. mysql_ DEPRECATED означает, что он небезопасен и больше не поддерживается или поддерживается.

mysql_numrows И ==> Вы имеете в виду mysql_num_rows

Вы также уязвимы для SQL Injection и должны использовать параметризованные запросы, используя Подготовленные заявления. Read more here

+0

Спасибо :) ORDER BY post_date DESC работал – LAB

0

Вам необходимо использовать ORDER BY с DESC на колонке, которая обозначает дату-время.

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

  • Нет связанных вопросов^_^