PHP+Mysql开发分页之分页完善
分页完善
<html>
<head>
<meta http-equiv="CONTENT-TYPE" content="text/html;">
</head>
<title>分页</title>
<style>
div.page{
text-align: center;
}
div.page a{
border: #aa0027 solid 1px;
text-decoration: none;
padding: 2px 5px 2px 5px;
margin: 2px;
}
div.page span.current{
border: #000099 1px solid;background-color: #992b6c;padding: 4px 6px 4px 6px;margin: 2px;color: #fff;
font-weight: bold;
}
div.page form{
display: inline;
}
div.content{
height: 200px;
}
</style>
<body>
<?php
error_reporting(E_ALL ^ E_DEPRECATED);
?>
<?php
/** 1.传入页面 **/
$page= isset($_GET['p']) ? trim($_GET['p']) : 1;
/** 2.根据页面取出数据:php->mysql **/
$host = "localhost";
$username = 'root';
$password = '123456789';
$db = 'bbs2';
$PageSize=5;
$ShowPage=3;
//连接数据库
$conn = mysql_connect($host, $username, $password);
if(!$conn){
echo "数据库连接失败";
exit;
}
//选择所要操作的数据库
mysql_select_db($db);
//设置数据库编码格式
mysql_query('SET NAMES UTF8');
//编写sql获取分页数据:SELECT * FROM 表名 LIMIT 起始位置 , 显示条数
$sql = "SELECT*FROM test LIMIT ".($page-1)*$PageSize .",$PageSize";
if(!$sql){
echo "取出不成功";
};
//把sql语句传送到数据库
$result = mysql_query($sql);
//处理我们的数据
echo "<div class='content'>";
echo "<table border=1 cellspacing=0 width=15% align='center'>";
echo "<tr><td>ID</td><td>名字</td><td>性别</td></tr>";
while($row = mysql_fetch_assoc($result)){
echo "<tr>";
echo "<td>{$row['id']}</td>";
echo "<td>{$row['name']}</td>";
echo "<td>{$row['sex']}</td>";
echo "<tr>";
}
echo "</table>";
echo "</div>";
//释放结果
mysql_free_result($result);
//获取数据总数
$to_sql="SELECT COUNT(*)FROM test";
$to_result=mysql_fetch_array(mysql_query($to_sql));
$to=$to_result[0];
//计算页数
$to_pages=ceil($to/$PageSize);
mysql_close($conn);
/** 3.显示数据+分页条 **/
$page_banner="<div class='page'>";
//计算偏移量
$pageffset=($ShowPage-1)/2;
if($page>1){
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=1'>首页</a>";
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($page-1)."'><上一页</a>";
}
//初始化数据
$start=1;
$end=$to_pages;
if ($to_pages>$ShowPage){
if($page>$pageffset+1){
$page_banner.="...";
}
if ($page>$pageffset){
$start=$page-$pageffset;
$end=$to_pages>$page+$pageffset?$page+$pageffset:$to_pages;
}else{
$start=1;
$end=$to_pages>$ShowPage?$ShowPage:$to_pages;
}
if ($page+$pageffset>$to_pages){
$start=$start-($page+$pageffset-$end);
}
}
for($i=$start;$i<=$end;$i++) {
if ($page == $i) {
$page_banner .= "<span class='current'>{$i}</span>";
} else {
$page_banner .= "<a href='" . $_SERVER['PHP_SELF'] . "?p=" . ($i) . "'>{$i}</a>";
}
}
//尾部省略
if ($to_pages>$ShowPage&&$to_pages>$page+$pageffset){
$page_banner.="...";
}
if ($page<$to_pages){
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($page+1)."'>下一页></a>";
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($to_pages)."'>尾页</a>";
}
$page_banner.="共{$to_pages}页";
$page_banner.="<form action='mupage.php' method='get'>";
$page_banner.="到第<input type='text'size='2'name='p'>页";
$page_banner.="<input type='submit'value='确定'>";
$page_banner.="</form></div>";
echo $page_banner;
?>
</body>
</html>$page=($_GET['P'])改为了$page= isset($_GET['p']) ? trim($_GET['p']) : 1;因为需要设置第一次打开默认页码
基本的分页条已经完成,也对页码的样式进行了修改,你也可以按自己的风格对分页条的样式进行设计,对其进行更为细致的修改测试,甚至封装起来做为自己的类来使用。
本篇只作为一个抛砖引玉的作用,使读者对php和mysql之间的操作加深理解,同时也对之后的学习能更加得心应手。
neue Datei
<html>
<head>
<meta http-equiv="CONTENT-TYPE" content="text/html;">
</head>
<title>分页</title>
<style>
div.page{
text-align: center;
}
div.page a{
border: #aa0027 solid 1px;
text-decoration: none;
padding: 2px 5px 2px 5px;
margin: 2px;
}
div.page span.current{
border: #000099 1px solid;background-color: #992b6c;padding: 4px 6px 4px 6px;margin: 2px;color: #fff;
font-weight: bold;
}
div.page form{
display: inline;
}
div.content{
height: 200px;
}
</style>
<body>
<?php
error_reporting(E_ALL ^ E_DEPRECATED);
?>
<?php
/** 1.传入页面 **/
$page= isset($_GET['p']) ? trim($_GET['p']) : 1;
/** 2.根据页面取出数据:php->mysql **/
$host = "localhost";
$username = 'root';
$password = '123456789';
$db = 'bbs2';
$PageSize=5;
$ShowPage=3;
//连接数据库
$conn = mysql_connect($host, $username, $password);
if(!$conn){
// echo "数据库连接失败";
exit;
}
//选择所要操作的数据库
mysql_select_db($db);
//设置数据库编码格式
mysql_query('SET NAMES UTF8');
//编写sql获取分页数据:SELECT * FROM 表名 LIMIT 起始位置 , 显示条数
$sql = "SELECT*FROM test LIMIT ".($page-1)*$PageSize .",$PageSize";
if(!$sql){
echo "取出不成功";
};
//把sql语句传送到数据库
$result = mysql_query($sql);
//处理我们的数据
echo "<div class='content'>";
echo "<table border=1 cellspacing=0 width=15% align='center'>";
echo "<tr><td>ID</td><td>名字</td><td>性别</td></tr>";
while($row = mysql_fetch_assoc($result)){
echo "<tr>";
echo "<td>{$row['id']}</td>";
echo "<td>{$row['name']}</td>";
echo "<td>{$row['sex']}</td>";
echo "<tr>";
}
echo "</table>";
echo "</div>";
//释放结果
mysql_free_result($result);
//获取数据总数
$to_sql="SELECT COUNT(*)FROM test";
$to_result=mysql_fetch_array(mysql_query($to_sql));
$to=$to_result[0];
//计算页数
$to_pages=ceil($to/$PageSize);
mysql_close($conn);
/** 3.显示数据+分页条 **/
$page_banner="<div class='page'>";
//计算偏移量
$pageffset=($ShowPage-1)/2;
if($page>1){
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=1'>首页</a>";
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($page-1)."'><上一页</a>";
}
//初始化数据
$start=1;
$end=$to_pages;
if ($to_pages>$ShowPage){
if($page>$pageffset+1){
$page_banner.="...";
}
if ($page>$pageffset){
$start=$page-$pageffset;
$end=$to_pages>$page+$pageffset?$page+$pageffset:$to_pages;
}else{
$start=1;
$end=$to_pages>$ShowPage?$ShowPage:$to_pages;
}
if ($page+$pageffset>$to_pages){
$start=$start-($page+$pageffset-$end);
}
}
for($i=$start;$i<=$end;$i++) {
if ($page == $i) {
$page_banner .= "<span class='current'>{$i}</span>";
} else {
$page_banner .= "<a href='" . $_SERVER['PHP_SELF'] . "?p=" . ($i) . "'>{$i}</a>";
}
}
//尾部省略
if ($to_pages>$ShowPage&&$to_pages>$page+$pageffset){
$page_banner.="...";
}
if ($page<$to_pages){
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($page+1)."'>下一页></a>";
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($to_pages)."'>尾页</a>";
}
$page_banner.="共{$to_pages}页";
$page_banner.="<form action='mupage.php' method='get'>";
$page_banner.="到第<input type='text'size='2'name='p'>页";
$page_banner.="<input type='submit'value='确定'>";
$page_banner.="</form></div>";
echo $page_banner;
?>
</body>
</html>
Vorschau
Clear
- Kursempfehlungen
- Kursunterlagen herunterladen
Die Kursunterlagen stehen derzeit nicht zum Download zur Verfügung. Die Mitarbeiter organisieren es derzeit. Bitte schenken Sie diesem Kurs in Zukunft mehr Aufmerksamkeit
Auch Studierende, die diesen Kurs gesehen haben, lernen
Lassen Sie uns kurz über die Gründung eines Unternehmens in PHP sprechen
Kurze Einführung in die Web-Frontend-Entwicklung
Umfangreiche, praktische Tianlongbabu-Entwicklung eines Mini-Version-MVC-Frameworks, das die Enzyklopädie-Website mit peinlichen Dingen imitiert
Erste Schritte mit der praktischen PHP-Entwicklung: Schnelle PHP-Erstellung [Small Business Forum]
Anmeldebestätigung und klassisches Message Board
Wissenssammlung über Computernetzwerke
Schnellstart-Node.JS-Vollversion
Der Frontend-Kurs, der Sie am besten versteht: HTML5/CSS3/ES6/NPM/Vue/...[Original]
Schreiben Sie Ihr eigenes PHP-MVC-Framework (40 Kapitel ausführlich/große Details/Muss gelesen werden, damit Neulinge vorankommen)













