首页  »  站长资讯  »  网站优化

织梦列表页,支持顶(赞)和踩的功能,顶过后标红高亮显示

2023/03/11 10:14     老李收录网     已浏览323次

模板

01

1 {dede:arclist row='6' orderby='id' titlelen='100'}
2  
4  
5 {/dede:arclist}

css

1 .icon-heart2{
2     background: url(../images/bg-main.png) -22px 5px no-repeat;
3 }
4 .icon-heart2:hover{
5     background: url(../images/bg-main.png) 2px 4px no-repeat;
6 }
7 .icon-heart-on{
8     background: url(../images/bg-main.png) 2px 4px no-repeat;
9 }

然后在,plus中新建立一个digg_ajax_list.PHP文件,内容为
 

01
02    
03 require_once(dirname(__FILE__)."/../include/common.inc.php");  
04   
05 $action = isset($action) ? trim($action) : '';  
06 $id = empty($id)? 0 : intval(preg_replace("/[^d]/",'', $id));  
07   
08 if($id < 1)  
09 {  
10     exit();  
11 }  
12 $maintable = 'archives';  
13 if($action == 'good')  
14 {  
15     $dsql->ExecuteNoneQuery("Update `$maintable` set scores = scores + {$cfg_caicai_add},goodpost=goodpost+1,lastpost=".time()." where id='$id'");  
16 }  
17 else if($action=='bad')  
18 {  
19     $dsql->ExecuteNoneQuery("Update `$maintable` set scores = scores - {$cfg_caicai_sub},badpost=badpost+1,lastpost=".time()." where id='$id'");  
20 }  
21 $digg = '';  
22 $row = $dsql->GetOne("Select goodpost,badpost,scores From `$maintable` where id='$id' ");  
23 if(!is_array($row))  
24 {  
25     exit();  
26 }  
27 if($row['goodpost']+$row['badpost'] == 0)  
28 {  
29     $row['goodper'] = $row['badper'] = 0;  
30 }  
31 else
32 {  
33     $row['goodper'] = number_format($row['goodpost']/($row['goodpost']+$row['badpost']),3)*100;  
34     $row['badper'] = 100-$row['goodper'];  
35 }  
36   
37 if(empty($formurl)) $formurl = '';  
38 if($formurl=='caicai')  
39
40     if($action == 'good') $digg = $row['goodpost'];  
41     if($action == 'bad') $digg  = $row['badpost'];  
42 }  
43 else
44 {  
45     $row['goodper'] = trim(sprintf("%4.2f", $row['goodper']));  
46     $row['badper'] = trim(sprintf("%4.2f", $row['badper']));      
47     $digg = '.$id.')">.$id.'"class="icon-heart-on">      '.$row['goodpost'];   //点击后,如果从没有被赞过,则自动把新的点击次数重写入目标位置.
48 }  
49 AjaxHead();  
50 echo $digg;  
51 exit();  
52 ?>