PHP實(shí)現(xiàn)上一篇下一篇的方法實(shí)例總結(jié)
本文實(shí)例分析了PHP實(shí)現(xiàn)上一篇下一篇的方法。分享給大家供大家參考,具體如下:
php實(shí)現(xiàn)上一篇下一篇這個(gè)主要是通過sql來根據(jù)當(dāng)前的id來進(jìn)行判斷然后篩選出當(dāng)前ID之前的數(shù)據(jù)或ID之后的數(shù)據(jù)了就這么簡單,具體的我們來看看。
實(shí)現(xiàn)網(wǎng)站文章里面上一篇和下一篇的sql語句的寫法。
當(dāng)前文章的id為 $article_id,當(dāng)前文章對(duì)應(yīng)分類的id是$cat_id,那么上一篇就應(yīng)該是:
執(zhí)行這段sql語句后得到 $max_id,然后
簡化一下,轉(zhuǎn)為子查詢即:
下一篇為,代碼如下:
執(zhí)行這段sql語句后得到 $min_id,然后:
簡化一下,轉(zhuǎn)為子查詢即:
最后講一下有很多朋友喜歡使用下面語句
上一篇,代碼如下:
select id from table where id10 limit 0,1;
這樣肯定沒有問題,但是是性能感覺不怎么地.
sql語句優(yōu)化:
你可以使用union all來實(shí)現(xiàn)一條語句取3行數(shù)據(jù),但是前提是3個(gè)查詢的字段要相同,這個(gè)查詢出來的結(jié)果第一行就是上一篇文章,第二行是當(dāng)前文章,第三行是下一篇文章,代碼如下:
現(xiàn)在來看一些cms中的例子phpcms 實(shí)現(xiàn)上一篇下一篇.
獲取當(dāng)前瀏覽文章id:
$id = isset($_GET['id']) > 0 ? intval($_GET['id']) : "";
下一篇文章:
$query = mysql_query("SELECT id,title FROM article WHERE id>'$id' ORDER BY id ASC LIMIT 1"); $next = mysql_fetch_array($query);
上一篇文章:
$query = mysql_query("SELECT id,title FROM article WHERE id <'$id' ORDER BY id DESC LIMIT 1"); $prev = mysql_fetch_array($query);
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php+mysql數(shù)據(jù)庫操作入門教程》、《php+mysqli數(shù)據(jù)庫程序設(shè)計(jì)技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《php字符串(string)用法總結(jié)》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
PHP實(shí)現(xiàn)HTML生成PDF文件的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)HTML生成PDF文件的方法,可實(shí)現(xiàn)linux中利用HTML2FPDF與wkhtmltoimage把網(wǎng)頁html直接生成pdf格式的文件,需要的朋友可以參考下2014-11-11php中unable to fork報(bào)錯(cuò)簡單解決方法
在本篇內(nèi)容里小編給大家整理的是一篇關(guān)于php中unable to fork報(bào)錯(cuò)簡單解決方法,對(duì)此有興趣的朋友們可以跟著學(xué)習(xí)下。2021-02-02php5 pdo新改動(dòng)加載注意事項(xiàng)
想試試pdo怎么用,把 extension=php_pdo_mssql.dll extension=php_pdo_mysql.dll2008-09-09PHP實(shí)現(xiàn)利用MySQL保存session的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)利用MySQL保存session的方法,是PHP程序設(shè)計(jì)中比較有實(shí)用價(jià)值的一個(gè)技巧,需要的朋友可以參考下2014-08-08