Maison  >  Article  >  développement back-end  >  Comment obtenir des likes en php

Comment obtenir des likes en php

coldplay.xixi
coldplay.xixioriginal
2020-11-13 11:48:173466parcourir

Comment obtenir des likes en PHP : obtenez d'abord l'identifiant de l'article, le code est [var id=$("#vote").attr('rel')] puis actualisez la page après que le like soit réussi et mettez à jour le nouveau nombre de likes, le code est [window.location.reload()].

Comment obtenir des likes en php

Comment obtenir des likes en php :

Je travaille actuellement sur un site Web de vidéos et j'ai besoin d'obtenir des likes sur les vidéos, j'ai implémenté la fonction en combinant ajax et une base de données. Le format de la base de données est qu'elle comporte quatre champs : identifiant de l'article, j'aime, je n'aime pas et ip. Parce qu'une IP ne peut être aimée qu'une seule fois, un champ IP est nécessaire pour stocker l'IP aimée, afin qu'il soit facile de déterminer si l'IP a été aimée

J'ai créé deux boutons J'aime et Je n'aime pas ; le code spécifique est le suivant :

<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>

programme js

<script type="text/javascript">
$(function(){
var id=$("#vote").attr(&#39;rel&#39;);//获取到文章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>

Je l'écris en utilisant le framework ci, donc la méthode vote et la méthode dvote sous news.php représentent les goûts et les aversions, en particulier le code est le suivant

public function vote(){
$id=$_GET[&#39;id&#39;];
$ip=getIP();
$getdata=$this->data_model;
$data=$getdata->get_vote_ip($id,$ip);
$msg="";
if(empty($data[&#39;ip&#39;]) || !$data[&#39;ip&#39;]){
  $data=array(&#39;nid&#39;=>$id,&#39;vote&#39;=>1,&#39;ip&#39;=>$ip);
  $re=$getdata->insert_vote($data);
  $msg.="点赞成功";
}else{
  $msg.="一个ip只能操作一次";
}
echo $msg;
}
public function dvote(){
$id=$_GET[&#39;id&#39;];
$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=&#39;{$id}&#39; and ip=&#39;{$ip}&#39;");
// $data=$query->result_array()[0];
// return $data;
// }
$msg="";
if(empty($data[&#39;ip&#39;]) || !$data[&#39;ip&#39;]){
  $data=array(&#39;nid&#39;=>$id,&#39;dvote&#39;=>0,&#39;ip&#39;=>$ip);
  $re=$getdata->insert_vote($data);
  $msg.="踩成功";
}else{
  $msg.="一个ip只能操作一次";
}
echo $msg;
}

Une fois que les likes peuvent être réalisés, les données sur les likes doivent être mises à jour. Tout d'abord, les informations similaires de l'article doivent être interrogées dans la base de données

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

Obtenez les informations et. Renvoyez-le au contrôleur. Dans celui-ci, les informations sur les goûts et les aversions sont stockées dans la base de données dans une boucle, puis les nouvelles longueurs de tableau sont calculées respectivement pour obtenir le nombre d'aimer et d'aversion. De cette manière, elles peuvent être affichées sur le contrôleur. page html

Connexes Recommandations d'apprentissage gratuites : programmation php (vidéo)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn