PHP实现分页

【前言】

   本文总结下PHP实现分页的原理和方法,具体分析在代码里已经注释过,直接看代码。

   相关知识点,我在上篇文章做了总结

   注意文件名

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>  
<?php
	//连接user数据库
    include 'config.php';
    $connect = mysqli_connect(DB_HOST,DB_USER,DB_PWD,DB_NAME);
    if(!$connect){
        die("could not connect:".mysqli_error());
    }else{
        echo "连接成功<br>";
         //查询结果
        // mysqli_query() 函数执行一条 MySQL 查询
    	$result = mysqli_query($connect,"select* from user"); 
    	//mysqli_num_rows结果集里行数,该结果集从 mysql_query() 的调用中得到
    	$count = mysqli_num_rows($result);
    	//传页的话改为整型
    	$page = isset($_GET['page'])?(int)$_GET['page']:1;
    	//每页显示数
    	$num = 5	;
    	//总页数
    	$total = ceil($count / $num);
    	if ($page<1) {
    		$page = 1;
    	}
    	if ($page>$total) {
    		$page = $total;
    	}
    	//偏移量
    	$offset = ($page-1)*$num;
    	$sql = "select id,name,age from demo order by id asc limit $offset,$num";
    	$result = mysqli_query($connect,$sql);
	    	if ($result&&mysqli_num_rows($result)) {
	    		echo "<table border=1 cellspacing=0>";
	        while($row = mysqli_fetch_array($result)){
	            echo "<tr>";
	            echo "<td>".$row['id']."</td>";
	            echo "<td>".$row['name']."</td>";
	            echo "<td>".$row['age']."</td>";
	            echo "<tr/>";
	        }
	        echo'<tr>
	        		<td colspan="5">
	        			<a href="page.php?page=1">首页</a>
	        			<a href="page.php?page=' .($page-1). '">上一页</a>
	        			<a href="page.php?page=' .($page+1). '">下一页</a>
	        			<a href="page.php?page=' .$total. '">尾页</a>
	        			当前是第'.$page.'页 共'.$total.'页
	        		</td>
	        	</tr>';
	        echo "</table>";

    	}else{
    		echo "没有数据";
    	}
    }
    //关闭连接
    $close = mysqli_close($connect);
    if(!$close){
        die("关闭数据库失败");
    }else{
        echo "关闭成功";
    }
?>

   配置文件

<?php
	//数据库服务器
	define('DB_HOST', 'localhost');
	//数据库用户名
	define('DB_USER', 'root');
	//数据库密码
	define('DB_PWD', 'root');
	//数据库名
	define('DB_NAME', 'user');
	//字符集
	define('DB_CHARSET', 'utf8');
?>

效果图如下:

 

.

猜你喜欢

转载自570109268.iteye.com/blog/2414186