# Html 模版源码
~~~
user_id="{$article->user->id}" article_id="{$article.id}" session_id="{$Think.session.uid}"
>
{if $Think.session.code == 1}
取消收藏
{else/}
收藏
{/if}
{if $Think.session.zan == 1}
取消点赞
{else/}
点赞
{/if}
~~~
# js代码
~~~
$(function () {
//收藏功能
$('#sc').click(function () {
//获取文章id
let user_id = $(this).attr('user_id')
//获取文章id
let article_id = $(this).attr('article_id')
//获取session id
let session_id = $(this).attr('session_id')
if (user_id && article_id){
$.ajax({
type: 'get',
url: "{:url('/collection')}",
data:{
'user_id':user_id,
'article_id':article_id,
'session_id':session_id,
},
dataType: 'json',
success: function(data){
switch (data.status) {
case 1:
swal({
text: data.message,
icon: "success",
button: false
});
$('#sc').attr('class','btn bg-danger')
$('#sc').html(' 收藏成功 ')
break
case 0 :
swal({
text: data.message,
icon: "warning",
button: false,
});
break
case -1:
swal({
text: data.message,
icon: "warning",
button: false,
});
$('#sc').attr('class','btn bg-success')
$('#sc').html('收藏')
break
}
}
})
}
})
//点赞功能
$('#dz').click(function () {
//获取文章id
let user_id = $(this).attr('user_id')
//获取文章id
let article_id = $(this).attr('article_id')
//获取session id
let session_id = $(this).attr('session_id')
if (user_id && article_id){
$.ajax({
type: 'get',
url: "{:url('/zan')}",
data:{
'user_id':user_id,
'article_id':article_id,
'session_id':session_id,
},
dataType: 'json',
success: function(data){
switch (data.status) {
case 1:
swal({
text: data.message,
icon: "success",
button: false
});
$('#dz').attr('class','btn bg-danger')
$('#dz').html(' 点赞成功 ')
break
case 0 :
swal({
text: data.message,
icon: "warning",
button: false,
});
break
case -1:
swal({
text: data.message,
icon: "warning",
button: false,
});
$('#dz').attr('class','btn bg-success')
$('#dz').html('点赞')
break
}
}
})
}
})
})
~~~
# php 代码
~~~
//加入收藏
public function collection(Request $request){
$data = $request->param();
//判断是否登录进行收藏
if ($data['session_id'] == null){
return ['status'=> 0,'message'=>'您还没有登录,不能进行文章收藏'];
}
//定义规则,进行数据库查询
$map[] = ['user_id','=', $data['user_id']];
$map[] = ['article_id','=', $data['article_id']];
$rule = Db::table('collection')->where($map)->find();
if (is_null($rule)){
$rule = Db::table('collection')->insert(
[
'user_id' => $data['user_id'],
'article_id' => $data['article_id'],
]
);
session('code',1);
return ['status'=>1,'message'=>'收藏成功'];
}else{
session('code',0);
Db::table('collection')->where($map)->delete();
return ['status'=>-1, 'message'=>'取消收藏'];
}
}
//点赞
public function zan(Request $request){
$data = $request->param();
//判断是否登录进行收藏
if ($data['session_id'] == null){
return ['status'=> 0,'message'=>'您还没有登录,不能对文章点赞'];
}
//定义规则,进行数据库查询
$map[] = ['user_id','=', $data['user_id']];
$map[] = ['article_id','=', $data['article_id']];
$rule = Db::table('zan')->where($map)->find();
if (is_null($rule)){
Db::table('zan')->insert(
[
'user_id' => $data['user_id'],
'article_id' => $data['article_id'],
]
);
session('zan',1);
return ['status'=>1,'message'=>'点赞成功'];
}else{
session('zan',0);
Db::table('zan')->where($map)->delete();
return ['status'=>-1, 'message'=>'取消点赞'];
}
}
~~~
# 路由设置
~~~
//加入收藏
Route::get('collection','index/collection');
//点赞
Route::get('zan','index/zan');
~~~