国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

php+js實現(xiàn)點贊功能的示例詳解

瀏覽:110日期:2022-09-09 13:14:08

最近在做一個視頻網站,需要實現(xiàn)視頻的點贊功能,我是結合ajax和數(shù)據(jù)庫實現(xiàn)的,數(shù)據(jù)庫的格式為有四個字段:文章id,贊,踩,ip。因為需要一個ip只能點贊一次,所以需要一個ip字段存儲點贊的ip,這樣便于判斷該ip是否已經點贊過了;

我將點贊和踩的圖片做成兩個按鈕;具體代碼如下:

<button rel='<?php echo 文章id;?>'><img src='http://www.intensediesel.com/bcjs/點贊圖片路徑' alt='贊'><span style='position:absolute;margin-top:6px;margin-left:2px;font-size:20px'><span style='position:absolute;margin-top:-2px;margin-left:6px;font-size:20px'><?php if(!$vnum){echo 0;}else{ echo 點贊次數(shù);} ?></span></button>

<button rel='<?php echo 文章id;?>'><img src='http://www.intensediesel.com/bcjs/踩圖片路徑' alt='踩' ><span style='position:absolute;margin-top:2px;margin-left:6px;font-size:20px'><?php if(!$dnum){echo 0;}else{ echo 踩次數(shù);} ?></span></button>

js程序

<script type='text/javascript'>$(function(){var id=$('#vote').attr(’rel’);//獲取到文章id;$('#vote').click(function(){$.get('傳到哪個頁面?id='+id,function(r){alert(r);window.location.reload();//點贊成功后刷新頁面更新新的點贊次數(shù)})})$('#dvote').click(function(){$.get('/news/dvote?id='+id,function(r){alert(r);window.location.reload();})})})</script>

我是用ci框架寫,所以在news.php下面的vote方法和dvote方法代表的是贊和踩,具體代碼如下

public function vote(){$id=$_GET[’id’];$ip=getIP();$getdata=$this->data_model;$data=$getdata->get_vote_ip($id,$ip);$msg='';if(empty($data[’ip’]) || !$data[’ip’]){$data=array(’nid’=>$id,’vote’=>1,’ip’=>$ip);$re=$getdata->insert_vote($data);$msg.='點贊成功';}else{$msg.='一個ip只能操作一次';}echo $msg;}public function dvote(){$id=$_GET[’id’];$ip=getIP();$getdata=$this->data_model;$data=$getdata->get_vote_ip($id,$ip);//get_vote_ip($id,$ip),是在模型里面的查詢該ip是否已經點贊過,具體代碼 如下//public function get_vote_ip($id,$ip){// $query=$this->db->query('select * from 表名 where nid=’{$id}’ and ip=’{$ip}’');// $data=$query->result_array()[0];// return $data;// }$msg='';if(empty($data[’ip’]) || !$data[’ip’]){$data=array(’nid’=>$id,’dvote’=>0,’ip’=>$ip);$re=$getdata->insert_vote($data);$msg.='踩成功';}else{$msg.='一個ip只能操作一次';}echo $msg;}

點贊可以實現(xiàn)以后,就是需要將點贊數(shù)據(jù)進行更新,首先需要在數(shù)據(jù)庫查詢該篇文章所以的點贊信息

//獲取點贊信息public function get_vote($id){$query=$this->db->query('select * from tx_vote where nid=’{$id}’');$data=$query->result_array();return $data;}

獲取信息返回到 控制器里面將贊和踩的信息循環(huán)分別存入到數(shù)據(jù)庫中然后分別計算新的數(shù)組長度就可以獲取贊和踩的次數(shù)了,這樣的再html頁面輸出就可以了

到此這篇關于php+js實現(xiàn)點贊功能的示例的文章就介紹到這了,更多相關php+js實現(xiàn)點贊功能內容請搜索好吧啦網以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: PHP
相關文章:
主站蜘蛛池模板: 和政县| 万宁市| 太仆寺旗| 崇仁县| 兴城市| 伊吾县| 福鼎市| 淳化县| 尉犁县| 张家口市| 南京市| 长泰县| 泰来县| 沙洋县| 永嘉县| 务川| 抚顺县| 田东县| 丰台区| 日照市| 浏阳市| 惠东县| 新丰县| 望谟县| 衡东县| 光泽县| 二手房| 包头市| 琼中| 镇赉县| 平陆县| 扶绥县| 江陵县| 宜兰市| 巴彦淖尔市| 西峡县| 米脂县| 栖霞市| 西林县| 宁夏| 南康市|