php + ajax实现 帖子点赞功能
Posted 程昱仲德
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php + ajax实现 帖子点赞功能相关的知识,希望对你有一定的参考价值。
知识:
一、首先页面需要加载jquery框架
二、ajax常用参数解释:
①、type:传输数据方式,get或者post
②、url:处理数据的php脚本
③、data:传输的数据索引及值,值用js获取,一般此属性为json串或字符串
④、async:参数为布尔类型,默认为true,即异步传输,浏览器不锁定
⑤、complete:参数为方法,跳转的脚本执行完成后的回调函数
⑥、success:参数为方法,跳转的脚本执行成功后的回调函数
⑦、error:参数为方法,跳转的脚本执行失败后的回调函数
三、脚本处理完成后将页面需要的数据return,之后在前端页面根据需求实现局部刷新,而不是进行跳转刷新,这是ajax最强大的地方
html代码部分:
<?php $id = $_GET[‘id‘]; require_once ‘mysqlHelper.php‘; $db = new mysqlHelper(‘localhost‘,‘root‘,‘root‘,‘dianzan‘); $sql = "select * from news where id = ‘$id‘"; $news = $db->GetOneData($sql); ?> <!doctype html> <html> <head> <script src="jquery-1.9.1.min.js"></script> <meta charset="UTF-8"> </head> <body> <h1><?php echo $news[‘title‘];?></h1> <pre> <?php echo $news[‘content‘];?> </pre> <input type="hidden" name="id" value="<?php echo $id;?>"> 点赞数:<span id="s"><?php echo $news[‘dianzan‘];?></span> <button id="btn">点赞</button> </body> </html>
js代码:
$("#btn").click(function(){ $.ajax({ url:"index.php", type:"POST", data:{id:<?php echo $id;?>}, async:false, success:function(data){ if(data === false){ alert(‘点赞失败!‘);location.href=‘dianzan.php?id=<?php echo $id;?>‘; }else{ alert(‘点赞成功!‘);$("#s").html(data); } } }) })
PHP代码部分:
<?php
header("Content-type:text/html;charset=utf-8");
require_once ‘mysqlHelper.php‘;
$db = new mysqlHelper(‘localhost‘,‘root‘,‘root‘,‘dianzan‘);
$id = $_POST[‘id‘];
$sql = "UPDATE news SET dianzan = dianzan +1 WHERE id = ‘$id‘";
$res = $db->execSql($sql);
if($res){
$dz = $db->getOneData("select * from news where id = ‘$id‘");
$dz = $dz[‘dianzan‘];
echo $dz;
}else{
return false;
}
?>
以上是关于php + ajax实现 帖子点赞功能的主要内容,如果未能解决你的问题,请参考以下文章
html PHP代码片段: - AJAX基本示例:此代码演示了使用PHP和JavaScript实现的基本AJAX功能。
Redis帖子相关功能实现 (发布笔记查看笔记点赞功能点赞排行榜)