怎么在php中利用mysql与Ajax实现一个点赞功能

  介绍

本篇文章为大家展示了怎么在php中利用mysql与Ajax实现一个点赞功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

一页面中HTML的代码部分:

& lt; span> 0 & lt;/span>   & lt; button  onclick=癵oodplus(1);“祝辞好+ 1 & lt;/button>      & lt; span> 0 & lt;/span>   & lt; button  onclick=癵oodplus(2);“祝辞好+ 1 & lt;/button>      & lt; span> 0 & lt;/span>   & lt; button  onclick=癵oodplus(3);“祝辞好+ 1 & lt;/button>      & lt; span> 0 & lt;/span>   & lt; button  onclick=癵oodplus(4);“祝辞好+ 1 & lt;/button>

二,写javascript

1,实现上面的按钮的点击事件goodplus

var  span =, document.getElementsByTagName(& # 39;跨度# 39;);//获取存放点赞数的dom    ,var  num;//点赞数,   ,var  flag =, 0,,//不同情况的标记,   ,,   ,function  goodplus (gindex) {,   flag 才能=,1,,   时间=num 才能;方法(span.item (gindex-1) .innerHTML),,   如果才能(checkcookie (gindex),==, true) {,   ,,num =, num  +, 1,,   ,,senddata (gindex);,//通过Ajax修改页面上的数据,   其他,}{大敌;   ,,警报(“你已经点过赞咯!“),,   ,,},   }

2,页面一打开时就应该更新点赞数据

为(var 小姐:=,1;,小姐:& lt;, span.length  +, 1;,我+ +){,   senddata才能(i),,,   }

3,通过Ajax获取数据senddata函数

function  senddata (aindex) {,   xmlhttp; var 才能;   ,,var 三种;   如果(window.XMLHttpRequest){才能,   ,,xmlhttp=new  XMLHttpRequest (),,   其他,}{大敌;   ,,xmlhttp=new  ActiveXObject (“Microsoft.XMLHTTP");,   ,,},   xmlhttp.onreadystatechange=函数(){才能,   ,,如果(xmlhttp.readyState ==, 4,,,, xmlhttp.status ==, 200) {,   ,,,txt =, xmlhttp.responseText;,//获取返回的数据,   ,,,var  cookieindex =, aindex 作用;1;,   ,,,document.getElementsByTagName(& # 39;跨度# 39;).item (cookieindex) .innerHTML =, txt,,//赋值,   ,,},   ,,},   xmlhttp.open才能(“GET",“路径/index . php ? num=? +, num  +, & # 39;,国旗=& # 39;,+,flag  +, & # 39;, aindex=& # 39;, +, aindex,真的),,   xmlhttp.send才能(),,   }

4,通过设置cookie来判断是否已经点赞,如果有饼干则提示已经点赞,如果没有饼干则允许点赞,而且会设置饼干

//判断是否已经存在了cookie    function  checkcookie (gindex) {,   var 才能;thiscookie =, & # 39; goodplus& # 39;, +, gindex;,   var 才能;mapcookie =, getCookie (thiscookie),   if 才能;(mapcookie !=null ,,, mapcookie !=啊? {,   ,,return 虚假,   {,,}else    ,,setCookie (thiscookie thiscookie 365),,   ,,return 真正的,   ,,},   }//获取cookie    function  getCookie (c_name){//获取饼干,参数是名称只   if 才能;(document.cookie.length 祝辞,0){//当饼干不为空的时候就开始查找名称,   ,,c_start =, document.cookie.indexOf(时间+ c_name “=?,,   ,,if  (c_start  !=, 1){,,,,,,,,,,//如果开始的位置不为1就是找到了,找到了之后就要确定结束的位置,   ,,,c_start =, c_start  +, c_name.length  +, 1,;   ,//cookie的值存在名称和等号的后面,所以内容的开始位置应该是加上长度和1,   ,,,c_end =, document.cookie.indexOf (“;“,,, c_start),,   ,,,if  (==c_end  1), {,   ,,,,c_end =, document.cookie.length;,   ,,,},   ,,,return  unescape (document.cookie.substring (c_start ,, c_end));//返回内容,解码只   ,,},   ,,},   return 才能““,   }//设置cookie    function  setCookie (c_name、价值、expiredays) {//存入名称,值,有效期。有效期到期事件是今天+有效天数,然后存储饼干,,   var 才能exdate=new 日期(),,   exdate.setDate才能(,exdate.getDate (), +, expiredays ),   document.cookie 才能=,c_name  +,“=? +,逃避(值),+,((expiredays==null), ?,,,,,,,,,=暗狡?+,exdate.toGMTString ()),   }

三、索引。php页面:

& lt; php ?   时间=美元num  $ _GET [& # 39; num # 39;];   时间=美元aindex  $ _GET [& # 39; aindex& # 39;];   $ con =, mysql_connect (“localhost",“root",““);      if  (! $ con) {   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

怎么在php中利用mysql与Ajax实现一个点赞功能