php 實(shí)現(xiàn)收藏功能的示例代碼
整理文檔,搜刮出一個(gè)php 實(shí)現(xiàn)收藏功能的示例代碼,稍微整理精簡(jiǎn)一下做下分享。
HTML:
<a class = "x" id="{$photo.id}" uid="{$Think.session.uid}" status = "{$collect_pic}" href = "javascript:void(0);"> <if condition = "$collect_num gt 0"> <span>取消收藏</span> <else/><span>收藏</span></if></a>
Js:
//點(diǎn)擊收藏,實(shí)現(xiàn)已收藏 $('.x').on('click',function(){ var Oa=$(this); var id=Oa.attr('id');//獲取圖片id屬性 var uid = Oa.attr('uid');//獲取用戶(hù)id var status = Oa.attr('status'); //獲取收藏狀態(tài) 1收藏,0取消收藏 $.post('url',{id:id,uid:uid,status:status},function(msg){ if(msg.status==1){ Oa.find("span").text('取消收藏'); Oa.attr('status','1'); }else{ Oa.find("span").text('收藏'); Oa.attr('status','0'); } },'json') })
PHP:
//判斷用戶(hù)是否已收藏該圖片 $data['uid'] = $_SESSION['uid']; $data['pid'] = $pid; $collect_pic = M('collect')->where($data)->getfield('status'); $this->collect_num = $collect_num; $this->collect_pic = $collect_pic; //收藏成功 public function cang(){ $data['pid'] = isset($_POST['id'])?intval(trim($_POST['id'])):0; $data['uid'] = $_SESSION['uid']; //默認(rèn)o收藏 1取消收藏 $status = isset($_POST['status'])?intval(trim($_POST['status'])):0; $db = M('collect'); if($status == 0){ //數(shù)據(jù)組裝,忽略 if(M('collect')->data($collect)->add()){ $msg['info'] = "ok"; $msg['status'] = 1; $this->ajaxreturn($msg); exit; }else{ $msg['info'] = 'fail'; $msg['status'] = 1; $this->ajaxreturn($msg); } }else{ //取消收藏 if($db->where($data)->delete()){ $msg['info'] = "ok"; $msg['status'] = 0; $this->ajaxreturn($msg); exit; }else{ $msg['info'] = 'fail'; $msg['status'] = 0; $this->ajaxreturn($msg); } }
思路:基本沒(méi)什么難度,注意細(xì)節(jié)即可。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
windows 2008r2+php5.6.28環(huán)境搭建詳細(xì)過(guò)程
這篇文章主要介紹了windows 2008r2+php5.6.28環(huán)境搭建詳細(xì)過(guò)程,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06Laravel如何創(chuàng)建服務(wù)器提供者實(shí)例代碼
這篇文章主要給大家介紹了關(guān)于Laravel如何創(chuàng)建服務(wù)器提供者的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Laravel具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04實(shí)例介紹PHP的Reflection反射機(jī)制
這篇文章主要介紹了實(shí)例介紹PHP的Reflection反射機(jī)制,本文從使用Reflection獲取一個(gè)類(lèi)的信息角度來(lái)介紹PHP的Reflection反射機(jī)制,需要的朋友可以參考下2014-08-08ThinkPHP3.2.3框架郵件發(fā)送功能圖文實(shí)例詳解
這篇文章主要介紹了ThinkPHP3.2.3框架郵件發(fā)送功能,結(jié)合圖文與實(shí)例形式詳細(xì)分析了基于thinkPHP框架進(jìn)行郵件發(fā)送的相關(guān)原理、配置及操作技巧,需要的朋友可以參考下2019-04-04Laravel中encrypt和decrypt的實(shí)現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于Laravel中encrypt和decrypt的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09PHP實(shí)現(xiàn)使用優(yōu)酷土豆視頻地址獲取swf播放器分享地址
這篇文章主要介紹了PHP實(shí)現(xiàn)使用優(yōu)酷土豆視頻地址獲取swf播放器分享地址,即分析優(yōu)酷土豆的視頻頁(yè)面地址,從而獲得對(duì)應(yīng)的swf播放器分享地址,需要的朋友可以參考下2014-06-06thinkphp6使用mysql悲觀(guān)鎖解決商品超賣(mài)問(wèn)題的實(shí)現(xiàn)
這篇文章主要介紹了thinkphp6使用mysql悲觀(guān)鎖解決商品超賣(mài)問(wèn)題的實(shí)現(xiàn)2021-11-11