0 レビュー
3 回答
php-データベースから前のエントリを取得する
記事を掲載したニュースウェブサイトを構築しており、各投稿の最後に次のprevの記事を表示しようとしています。
次のリンクは正常に機能していますが、previousリンクには常に最初の投稿が表示されます。それぞれに使用しているget
コードは次のとおりです。
$ get _next_sql = "SELECT * FROM articles WHERE id>'$ article_id' LIMIT 1";
$ get _ prev _sql = "SELECT * FROM articles WHERE id <'$ article_id' LIMIT 1";
prev
コードに何かが足りませんか?
わからない
0
レビュー
答え :
解決策:
現在よりもid
少ない投稿のみを取得しています。
デフォルトでは、データベースはPRIMARYフィールドとINASCの順序で並べ替えられます。
したがって、常に id
が最も低い投稿が返されます。
必要なのは、現在よりも低く、 id
が最も高い投稿です。
したがって、修正されるコードは次のようになります。
$ get_prev_sql = "SELECT * FROM articles WHERE id <'$ article _ id' ORDER BY id DESC LIMIT 1";
わからない
0
レビュー
答え :
解決策:
$get_prev_sql = "SELECT * FROM articles WHERE id < '$article_id' ORDER BY id DESC LIMIT 1";
主キーのデフォルトの順序はASCです
わからない
0
レビュー
答え :
解決策:
このクエリを使用
select * from table_name where id < your_current_id order BY id desc limit 1
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。