ajax+php+mysql 实现点赞、局部刷新,每个IP只能对一篇文章点赞一次

主要流程:

点赞—>判断当前设备IP是否对当前文章有过点赞记录—>若有记录,弹出提示“已经赞过了”; 若无记录,当前文章点赞数+1,并在记录设备IP点赞记录的表中插入信息。

文章表 article 必不可少的字段:article_id(必须设置为自增), cat_id, praise

图文表 image_article 必不可少的字段:article_id(必须设置为自增), cat_id, praise

设备IP点赞记录表 client_ip 必不可少的字段:id(必须设置为自增), article_id, cat_id, ip

HTML部分:

 <button class="praise" rel="{$sentence.article_id}" rev="{$sentence.cat_id}">

  ({$sentence.praise})

 </button>

JS部分( praise.js ):

$(function (){

    $(".praise").click(function () {

        var praise = $(this);

        var article_id = praise.attr("rel"); //获取HTML页面POST过来的article_id   

        var cat_id = praise.attr("rev"); //获取HTML页面POST过来的cat_id

        $.ajax({

            type: "POST",

            url: "praise.php",

            data: "article_id=" + article_id + "&cat_id=" + cat_id,//数据拼接

            cache: false, //不缓存此页面   

            success: function (data) {

                praise.html(data); //显示data并局部刷新

            },
            error: function () {

                alert("error");

            }

        });

    });

});

 

PHP部分( praise.php ):

<?php

$connect = mysql_connect("数据库地址","数据库用户名","数据库密码");//链接数据库

if (!$connect){die('Could not connect: ' . mysql_error());}

mysql_select_db("数据库名称",$connect);//选择数据库

由于图片上的代码直接贴上来会被 encode decode 变得错乱,所以直接上图了。

posted @ 2016-09-22 16:08  SKILL·NULL  阅读(5975)  评论(1编辑  收藏  举报