本文實例講述了php實現文章置頂功能的方法。分享給大家供大家參考,具體如下:
昨天客戶讓做文章置頂的功能。自己以前沒做過。靠着同事的指點才做了出來。本來挺簡單的事情,被自己搞了好久。自己真的缺乏對程序的理解。還是寫篇博客記錄一下吧。
第一步,在文章表里面建兩個字段,用於做置頂功能。一個是top字段,timestamp類型,默認選“定義”,用於存儲置頂操作的時間;還有一個flag字段,int類型,用於判斷是否置頂,置頂為1,否則為0。。
第二步,模板頁面修改。列表選項里面加置頂列,下面對應的行寫如下代碼:
<td class="center"> {{if $logs[data].flag}} <a href="JavaScript:void(0);" onclick="istop('{{$logs[data].id}}',0)">取消置頂</a>{{else}} <a href="javascript:void(0);" onclick="istop bjrongjinhuiyin('{{$logs[data].id}}',1)">置頂</a>{{/if}}</td>
就是用flag判斷是否置頂了。
頁面對應的置頂js:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
function
istop(id,flag){
$.ajax({
type:
"POST"
,
url:
"?m={{'article'|encrypt}}&a=savePost"
,
data:
"id="
+id+
"&flag="
+flag,
dataType:
"json"
,
success:
function
(msg){
if
(msg.status ==
"true"
)
{
window.location=
'?m={{'
article
'|encrypt}}'
;
}
else
{
alert(msg.message);
}
}
});
}
|
第三步,程序里只要稍作修改即可。先按是否置頂排序,再按置頂時間排序,再按默認的排序。
1
|
$sql
.=
" ORDER BY flag DESC,top DESC,id DESC "
;
|