>백엔드 개발 >PHP 튜토리얼 >PHP와 jQuery는 간단한 페이징을 구현합니다.

PHP와 jQuery는 간단한 페이징을 구현합니다.

小云云
小云云원래의
2018-03-21 15:02:571441검색

이 기사는 주로 PHP 및 jQuery를 사용하여 간단한 페이징을 구현하는 방법을 공유합니다.

HTML 페이지:

<!DOCTYPE html>
<html>
<head>
	<title>jquery ajax分页</title>
</head>
<body>
	<p>
		<p>下面是获取的内容</p>
		<ul id="data">
			<!-- 这里是显示的内容 -->
		</ul>
	</p>
	<p id="page">
		<a href="javascript:void(0)" name="first">首页</a>
		<a href="javascript:void(0)" name="up">上一页</a>
		<a href="javascript:void(0)" name="next">下一页</a>
		<a href="javascript:void(0)" name="last">尾页</a>
	</p>
	<p>
		<input type="text" id="p" value="1"><!-- 当前页 -->
		<input type="text" id="pageLast" value=""><!-- 总页数 -->
	</p>
	
</body>
</html>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.12.4.js"></script>
<!-- 偷懒+方便用了线上的jquery文件 -->
<script type="text/javascript">


	$(function(){//页面加载显示当前页的内容
		var p = $("#p").val();//获取当前页
		ajax(p); //调用ajax方法
	})


	$(&#39;#page>a&#39;).click(function(){//页码的点击事件
		var name = $(this);
		//获取pagenow当前页和总页数pagelast,记得使用parseInt,转换整型
		var pn = parseInt($("#p").val());
		var pl = parseInt($("#pageLast").val());
		switch(name.attr(&#39;name&#39;)){ //根据a标签内的name属性判断跳转方向
			case "first": p = 1;break;
			case "up": p = pn-1;break;
			case "next": p = pn+1;break;
			case "last": p = pl;break;
		}
		if (p<1 || p>pl) {
			return;
		}else{
			ajax(p);
		}
	})


	function ajax(p){//ajax方法,与后台交互
		$.ajax({
			type:"post",
			datatype:"json",
			url:"tb.php",
			data:{p:p},
			success:function(msg){
				$(&#39;#data&#39;).empty();
				aa = $.parseJSON(msg); //转换json格式(在返回值有小的问题的时候可以使用)
				pageNow = parseInt(aa[0].page);
				pn = $("#p").val(pageNow);//赋值当前页
				pageLast = parseInt(aa[0].lastpage);
				pl = $("#pageLast").val(pageLast);//赋值总页数
				$.each(aa,function(k,v){//标签内追加内容
					$(&#39;#data&#39;).append(&#39;<li>id为:&#39;+v.tb_id+&#39;;名称为:&#39;+v.name+&#39;</li>&#39;)
				})
				
			}
		})
	}
</script>

백엔드 PHP 코드:

<?php
$pdo = new PDO("mysql:host=127.0.0.1;dbname=school",&#39;root&#39;,&#39;root&#39;);
$sql = "select * from tb";
$count = $pdo->query($sql)->rowCount();//当前数据总条数
$p = isset($_POST[&#39;p&#39;])?$_POST[&#39;p&#39;]:1;//页码
$dataPerpage = 5;//每页显示条数
$offset = ($p-1)*$dataPerpage;//偏移量
$last = ceil($count/$dataPerpage);//总页数
$sql2 = "select * from tb limit $offset,$dataPerpage";
$data = $pdo->query($sql2)->fetchAll(PDO::FETCH_ASSOC);
//把当前页和总页数发送给前台
$data[0][&#39;page&#39;] = $p;
$data[0][&#39;lastpage&#39;] = $last;
echo json_encode($data);

관련 권장 사항:

php 간단한 페이징 프로그램 페이지 1/5_PHP 튜토리얼

php 아주 간단한 페이징 class_PHP 튜토리얼

php 간단한 페이징 프로그램

위 내용은 PHP와 jQuery는 간단한 페이징을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.