留言板------Ajax与mysql数据交互02

接01部分,jq的ajax请求:

<script type="text/javascript">
		$(function(){
			$("#btn").on("click",function(){
				if ($("#content").val() == "") {
					alert("~~客官,说一句再走呗~~");
					return;
				} 
				else{
					$.ajax({
						type:"get",
						url:"http://localhost/phpStudy/ajax03/message.php",
						async:true,
						dataType:"json",
						data:{
							content:$("#content").val(),
							act:"add"
						},
						success:function(data){
//							var result = JSON.parse(data);
							if (data.error==0) {
								createLi(data.id,$("#content").val(),data.time);
							} else{
								alert(data.msg);
							}
						}
					});
				}
				
			});
			
			//创建节点
			function createLi(id,content,time){
				var html = $('<li><p>'+content+'</p><div class="control"><span>时间:'+time+'</span>顶:<em>0</em>踩:<em>0</em><a class="remove" href="javasript:void(0)">删除</a></div></li>');
					$(".list").prepend(html);
					var h = html.height();
					html.height(0);
					html.stop().animate({
						height:h
					},300);
					//删除
					html.find(".remove").on("click",function(){
						html.stop().animate({
							height:0
						},300,function(){
							html.remove();
						})
					});
			}
		})
	</script>

这部分是php代码部分:

<?php
	header("Content-type:text/html;charset=utf8");
	 date_default_timezone_set("PRC");
	 //链接数据库
	 $link = mysqli_connect("localhost", "root", "", "eleven");
	 //设置数据库编码格式
	 mysqli_query($link, "set names utf8");
?>
注意:这部分我写成了公共代码,因为我在学习做其他东西时调用了,所以下面的代码会有
include_once "comment.php";
这一行是引用其他代码
<?php
	/*
	 * 开发文档
	 * 1.用于提交的留言留言进行存储
	 * url:http://localhost/phpStudy/ajax03/message.php
	 * 提交方式:get
	 * 提交参数说明:
	 * content 必须 留言板内容
	 * act 必须 借口标识
	 * 返回参数说明
	 * 成功:{"error":"0","id":1,"time":"2016-11-30"}
	 * 失败:{"error":1,"msg":"留言失败,请重试"}
	 * 
	 * 2.up
	 * id 必须 留言的id编号
	 * act 必须 接口标识 up
	 * 返回声明
	 * 成功:{"error":"0"}
	 * 失败:{"error":"1","msg":"点赞失败"}
	 * 
	 * 3.分页(获取页码的接口);
	 * act 必须 接口标识 count
	 * 返回参数说明:
	 * 成功:{"error":"0","countPage":"3"};
	 * 失败:{"error":"1","msg":"请求数据失败,请重试!"}
	 * 
	 * 4.分页(点击页码跳转)
	 * url:http://localhost/phpStudy/ajax03/message.php
	 * 提交方式:get
	 * 提交参数说明:
	 * starPage 必须参数 页码索引值
	 * act 必须 接口标识 page
	 * 返回参数说明
	 * 成功:{"error":"0","data":[{},{},{},{},{}]}
	 * 失败:{"error":"1","msg":"数据查询失败,请重试!"}
	 * 
	 */
	 include_once "comment.php";
	 $act = $_GET["act"];//接口请求标识
	 switch ($act) {
	 	case 'add'://提交留言
	 		$content = $_GET["content"];
			$time = time();
			$times = date("Y-m-d H:i:s",$time);
			$query = "INSERT INTO microblog(id,content,time) VALUES(null,'{$content}','{$times}')";
			mysqli_query($link,$query);
			$insertId = mysqli_insert_id($link);
			if($insertId>0){
				$arr = ["error"=>0,"id"=>$insertId,"time"=>$times];
				echo json_encode($arr);//将数组转化为json,方便前端使用
			}
			else{
				$arr = ["error"=>1,"msg"=>"留言失败,请重试!"];
				echo json_encode($arr);//将数组转化为json,方便前端使用
			}
	 		break;
			
		case 'up':
			$id = $_GET['id'];
			$search = "SELECT up FROM microblog WHERE id = $id";
			$result = mysqli_query($link, $search);
			$upNum = mysqli_fetch_row($result)[0];
			$upNum++;
			$query = "UPDATE microblog SET up='{$upNum}' WHERE id = '{$id}'";
			mysqli_query($link,$query);
			if(mysqli_affected_rows($link)){//更新数据成功
				echo '{"error":"0"}';
			}
			else{//更新失败
				echo '{"error":"1","msg":"点赞失败!"}';
			}
			break;
			
		case 'down':
			$id = $_GET['id'];
			$search = "SELECT down FROM microblog WHERE id = $id";
			$result = mysqli_query($link, $search);
			$downNum = mysqli_fetch_row($result)[0];
			$downNum++;
			$query = "UPDATE microblog SET down='{$downNum}' WHERE id = '{$id}'";
			mysqli_query($link,$query);
			if(mysqli_affected_rows($link)){//更新数据成功
				echo '{"error":"0"}';
			}
			else{//更新失败
				echo '{"error":"1","msg":"踩失败!"}';
			}
			break;	
		case 'remove':
			$id = $_GET['id'];
			$query ="DELETE FROM microblog WHERE id='{$id}'";
			mysqli_query($link,$query);
			if(mysqli_affected_rows($link)>0){//删除数据成功
				echo '{"error":"0"}';
			}
			else{
				echo '{"error":"1","msg":"删除失败!"}';
			}
			break;
		case 'count'://返回总页码
			$query = "SELECT count(id) FROM 	microblog";
			$result = mysqli_query($link, $query);
			$count = mysqli_fetch_row($result)[0];//以索引数组形式返回查询结果
			$countPage = ceil($count/5);
			echo '{"error":"0","countPage":"'.$countPage.'"}';
			break;	
		case 'page'://点击分页或者是页面第一次加载
			$index = $_GET["num"]*5;
			$search = "SELECT * FROM microblog ORDER BY id DESC LIMIT {$index},5";//倒叙查询留言
			$result = mysqli_query($link, $search);
			$arr = [];//存查询出来的数据
			while($row = mysqli_fetch_assoc($result)){
				array_unshift($arr,$row);
			}
//			print_r($arr);
//			{"error":"0","info":[{},{},{},{},{}]}
			$resultArr = ["error"=>"0","info"=>$arr];
			echo json_encode($resultArr);
			break;
		
	 }
?>


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值