首页后端开发PHP用PHP怎么实现点赞功能,代码如何写

用PHP怎么实现点赞功能,代码如何写

时间2024-03-25 06:14:03发布访客分类PHP浏览748
导读:关于“用PHP怎么实现点赞功能,代码如何写”的知识点有一些人不是很理解,对此小编给大家总结了相关内容,文中的内容简单清晰,易于学习与理解,具有一定的参考学习价值,希望能对大家有所帮助,接下来就跟随小编一起学习一下“用PHP怎么实现点赞功能,...
关于“用PHP怎么实现点赞功能,代码如何写”的知识点有一些人不是很理解,对此小编给大家总结了相关内容,文中的内容简单清晰,易于学习与理解,具有一定的参考学习价值,希望能对大家有所帮助,接下来就跟随小编一起学习一下“用PHP怎么实现点赞功能,代码如何写”吧。


最近在做一个视频网站,需要实现视频的点赞功能,我是结合ajax和数据库实现的,数据库的格式为有四个字段:文章id,赞,踩,ip。因为需要一个ip只能点赞一次,所以需要一个ip字段存储点赞的ip,这样便于判断该ip是否已经点赞过了;

我将点赞和踩的图片做成两个按钮;具体代码如下:

button style="margin-left:4px" id="vote" rel="?php echo 文章id;
    ?>
    ">
    
img src="点赞图片路径" 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 点赞次数;
}
     ?>
    
/span>
    
/button>
    
button style="margin-left:38px;
    margin-top:1px;
    position:absolute" id="dvote" rel="?php echo 文章id;
    ?>
    ">
    
img src="踩图片路径" alt="踩" >
    
span style="position:absolute;
    margin-top:2px;
    margin-left:6px;
    font-size:20px">

?php if(!$dnum){
    echo 0;
}
else{
     echo 踩次数;
}
     ?>
    
/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();
//点赞成功后刷新页面更新新的点赞次数
}
)
}
)

$("#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;

}

点赞可以实现以后,就是需要将点赞数据进行更新,首先需要在数据库查询该篇文章所以的点赞信息

//获取点赞信息
public function get_vote($id){
    
$query=$this->
    db->
query("select * from tx_vote where nid='{
$id}
    '");
    
$data=$query->
    result_array();
    
return $data;

}
    

获取信息返回到 控制器里面将赞和踩的信息循环分别存入到数据库中然后分别计算新的数组长度就可以获取赞和踩的次数了,这样的再html页面输出就可以了


通过以上内容的阐述,相信大家对“用PHP怎么实现点赞功能,代码如何写”已经有了进一步的了解,更多相关的问题,欢迎关注网络或到官网咨询客服。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 用PHP怎么实现点赞功能,代码如何写
本文地址: https://pptw.com/jishu/652592.html
PHP中怎么屏蔽错误提示,有几种方法 在jquery中如何用prompt来实现带是否的提示框

游客 回复需填写必要信息