整理文档,搜刮出一个php 实现收藏功能的示例代码,稍微整理精简一下做下分享。
HTML:
?
1
2
3
4
|
< 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:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
//点击收藏,实现已收藏
$( '.x' ).on( 'click' , function (){
var Oa=$( this );
var id=Oa.attr( 'id' ); //获取图片id属性
var uid = Oa.attr( 'uid' ); //获取用户id
var status = Oa.attr( 'status' ); //获取收藏状态 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:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
//判断用户是否已收藏该图片
$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' ];
//默认o收藏 1取消收藏
$status = isset( $_POST [ 'status' ])? intval (trim( $_POST [ 'status' ])):0;
$db = M( 'collect' );
if ( $status == 0){
//数据组装,忽略
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 );
}
}
|
思路:基本没什么难度,注意细节即可。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。
原文链接:http://www.cnblogs.com/zhongshenggen/p/6293774.html
相关文章
猜你喜欢
- 个人服务器网站搭建:如何选择合适的服务器提供商? 2025-06-10
- ASP.NET自助建站系统中如何实现多语言支持? 2025-06-10
- 64M VPS建站:如何选择最适合的网站建设平台? 2025-06-10
- ASP.NET本地开发时常见的配置错误及解决方法? 2025-06-10
- ASP.NET自助建站系统的数据库备份与恢复操作指南 2025-06-10
TA的动态
- 2025-07-10 怎样使用阿里云的安全工具进行服务器漏洞扫描和修复?
- 2025-07-10 怎样使用命令行工具优化Linux云服务器的Ping性能?
- 2025-07-10 怎样使用Xshell连接华为云服务器,实现高效远程管理?
- 2025-07-10 怎样利用云服务器D盘搭建稳定、高效的网站托管环境?
- 2025-07-10 怎样使用阿里云的安全组功能来增强服务器防火墙的安全性?
快网idc优惠网
QQ交流群
您的支持,是我们最大的动力!
热门文章
-
2025-05-27 68
-
2025-05-25 26
-
2025-05-29 23
-
2025-05-29 40
-
2025-05-25 70
热门评论