當前位置:首頁 » 編程語言 » phpmysql分頁

phpmysql分頁

發布時間: 2022-06-06 19:27:31

php+mysql實現添加和分頁功能

分頁:

SELECT * FROM procts_description WHERE id > 0 LIMIT $p, $percount

$p 是記錄開始條數,這個個參數需要指定的, 也就是通常說的頁數[或者說是第幾頁]
$percount 是每頁顯示多少條,一般情況是個常量

添加:

Insert into procts_description(procts_id,procts_name) value('1111','aaaaa')

② PHP+MySQL高效的分頁方法,如何優化LIMIT,OFFSET進行的分頁

其實我沒有看懂你想說什麼

③ php mysql查詢結果分頁顯示

查詢語句加上 limit 12

④ php 如何對mysql的文本分頁

$page=$_GET['page'];
$limit=($page-1)*10;
$offset=$page*10;
sql獲取 limit $limit,$offset 就ok

⑤ php使用mysql資料庫分頁顯示100頁,怎麼只輸出前後5頁的超鏈接,中間的用省略號顯示

這個得用程序去判斷,根據每頁顯示的記錄條數和記錄總數做處理,給你個思路吧。

functiongetTotalPagesStr($total,$maxPageItems){
$totalPages=0;
if($total%$maxPageItems==0){
$totalPages=$total/$maxPageItems;
if($totalPages==0)
$totalPages=1;
}
else{
$totalPages=(int)($total/$maxPageItems)+1;
}
return'<span>共'.$total.'條記錄,'.$totalPages.'頁</span>';
}
functiongetTotalPages($total,$maxPageItems){
$totalPages=0;

if($total%$maxPageItems==0){
$totalPages=$total/$maxPageItems;
if($totalPages==0)
$totalPages=1;
}
else{
$totalPages=(int)($total/$maxPageItems)+1;
}
return$totalPages;
}
functiongetPageUrl($page){
$url=$_SERVER['PHP_SELF'];
$i=0;
$queryStr='';
foreach($_GETas$key=>$value)
{
if($key!='page'){
if($i==0){
if(is_array($value)){
$j=0;
foreach($valueas$simpleValue){
if($j==0){
$queryStr=$queryStr.'?'.$key.'[]='.$simpleValue;
}
else{
$queryStr=$queryStr.'&'.$key.'[]='.$simpleValue;
}
$j++;
}
}
else{
$queryStr=$queryStr.'?'.$key.'='.$value;
}
}
else{
if(is_array($value)){
foreach($valueas$simpleValue){
$queryStr=$queryStr.'&'.$key.'[]='.$simpleValue;
}
}
else{
$queryStr=$queryStr.'&'.$key.'='.$value;
}
}
$i++;
}
}
foreach($_POSTas$key=>$value)
{
if($key!='page'&&$key!='submit'){

if($i==0){
if(is_array($value)){
$j=0;
foreach($valueas$simpleValue){
if($j==0){
$queryStr=$queryStr.'?'.$key.'[]='.$simpleValue;
}
else{
$queryStr=$queryStr.'&'.$key.'[]='.$simpleValue;
}
$j++;
}
}
else{
$queryStr=$queryStr.'?'.$key.'='.$value;
}
}
else{
if(is_array($value)){
foreach($valueas$simpleValue){
$queryStr=$queryStr.'&'.$key.'[]='.$simpleValue;
}
}
else{
$queryStr=$queryStr.'&'.$key.'='.$value;
}
}
$i++;
}
}
if($i!=0){
return$url.$queryStr.'&page='.$page;
}
return$url.'?page='.$page;
}
functiongetPageDisplay($total,$maxPageItems,$currentPage,$maxShowPages,
$pageSeparator){
$totalPages=getTotalPages($total,$maxPageItems);
$pageDispayStr='';
$ppage=0;
$startPage=0;
$endPage=0;

if($currentPage%$maxShowPages==0)
$ppage=(int)($currentPage/$maxShowPages)-1;
else
$ppage=(int)($currentPage/$maxShowPages);

$startPage=$ppage*$maxShowPages+1;
if($totalPages<=($ppage+1)*$maxShowPages){
$endPage=$totalPages;
}
else{
$endPage=($ppage+1)*$maxShowPages;
}
if($totalPages>$maxShowPages){
if($currentPage==1){
$pageDispayStr=$pageDispayStr.'<span>[第一頁/上一頁]</span>';
}
else{
$pageDispayStr=$pageDispayStr.'[<ahref=''.getPageUrl(1).''>第一頁</a>/';
$pageDispayStr=$pageDispayStr.'<ahref=''.getPageUrl($currentPage-1).''>上一頁</a>]';
}
}
if($startPage==1){
$pageDispayStr=$pageDispayStr.'<span><</span>';
}
else{
$pageDispayStr=$pageDispayStr.'<ahref=''.getPageUrl($startPage-1).''><<</a>';
}
for($i=$startPage;$i<=$endPage;$i++){
if($i!=$currentPage){
$pageDispayStr=$pageDispayStr.'<ahref=''.getPageUrl($i).''>'.$i.'</a>';
if($i!=$endPage){
$pageDispayStr=$pageDispayStr.$pageSeparator;
}
$pageDispayStr=$pageDispayStr.'';
}
else{
$pageDispayStr=$pageDispayStr.'<spanclass="current">'.$i.'</span>';
if($i!=$endPage){
$pageDispayStr=$pageDispayStr.$pageSeparator;
}
$pageDispayStr=$pageDispayStr.'';
}
}
if($endPage==$totalPages){
$pageDispayStr=$pageDispayStr.'<span>>></span>';
}
else{
$pageDispayStr=$pageDispayStr.'<ahref=''.getPageUrl($endPage+1).''>>></a>';
}
if($totalPages>$maxShowPages){
if($currentPage==$totalPages){
$pageDispayStr=$pageDispayStr.'<span>[下一頁/最後一頁]</span>';
}
else{
$pageDispayStr=$pageDispayStr.'[<ahref=''.getPageUrl($currentPage+1).''>下一頁</a>';
$pageDispayStr=$pageDispayStr.'/<ahref=''.getPageUrl($totalPages).''>最後一頁</a>]';
}
}
returngetTotalPagesStr($total,$maxPageItems).$pageDispayStr;
}

⑥ php中mysql語句怎麼寫分頁

limit 控制分頁

⑦ php+mysql分頁問題,分頁實現後,頁碼太多,如何僅顯示前10頁

php 和html 混編 看起來真是 DT

文件名為t1.php 已經過調試 沒有加錯誤捕捉 表名 tttt

<?php
header("Content-Type:text/html;charset=utf-8");

$dbhost="127.0.0.1";
$dbuser="root";
$dbpwd="*****";
$dbname="*****";
$charName="'UTF8'";//設置查詢字元集gbk,gbk2312,utf-8

$mysqli=newmysqli($dbhost,$dbuser,$dbpwd,$dbname);
if(mysqli_connect_errno()){//注意mysqli_connect_error()新特性
die('Unabletoconnect!').mysqli_connect_error();
}
$sql="SETNAMES".$charName;
$mysqli->query($sql);

$perNumber=50;//每頁顯示的記錄數
$page=isset($_GET['page'])?$_GET['page']:1;//獲得當前的頁面值

//echo$page;

$sql="selectcount(*)ascountfromtttt";

$rs=$mysqli->query($sql);//獲得記錄總數
$row=mysqli_fetch_array($rs,MYSQLI_ASSOC);
$totalNumber=$row['count'];

$totalPage=ceil($totalNumber/$perNumber);//計算出總頁數

$startCount=($page-1)*$perNumber;//分頁開始,根據此方法計算出開始的記錄

$result=$mysqli->query("select*fromttttorderbyiddesclimit$startCount,$perNumber");//根據前面的計算出開始的記錄和記錄數

$maxPageCount=10;
$buffCount=5;
$startPage=1;

if($page<$buffCount){
$startPage=1;
}elseif($page>=$buffCountand$page<$totalPage-$maxPageCount){
$startPage=$page-$buffCount+1;
}else{
$startPage=$totalPage-$maxPageCount+1;
}

$endPage=$startPage+$maxPageCount-1;


$htmlstr="";

$line=1;
while($row=mysqli_fetch_array($result,MYSQLI_ASSOC)){
$htmlstr.=$line."行";
$htmlstr.=$row['id']."</br>";

$line++;
}
$htmlstr.="<table><tr>";
if($page>1){
$htmlstr.="<td><ahref='t1.php?page=".1."'>第一頁</a></td>";
$htmlstr.="<td><ahref='t1.php?page=".($page-1)."'>上一頁</a></td>";
}
for($i=$startPage;$i<=$endPage;$i++){

$htmlstr.="<td><ahref='t1.php?page=".$i."'>".$i."</a></td>";
}

if($page<$totalPage){
$htmlstr.="<td><ahref='t1.php?page=".($page+1)."'>下一頁</a></td>";
$htmlstr.="<td><ahref='t1.php?page=".$totalPage."'>最後頁</a></td>";

}
$htmlstr.="</tr></table>";
echo$htmlstr;
?>

⑧ 求:php+mysql分頁代碼

樓上的光有上頁和下頁,我來做個【首頁】【上頁】【下頁】【末頁】的。

<?php
$result_num1 = mysql_query("SELECT * FROM article");
$num1 = mysql_num_rows($result_num1);
$pagesize1 = 10;
$start1 = $_GET['start1'];
$flag1 = $_GET['flag1'];

//判斷$start1是否有值
if ($start1 == null) {
$start1 = 0;
}
//判斷完畢

//判斷$flag1是否有值
if ($flag1 == null) {
$flag1 = 0;
}
//判斷完畢

//判斷標志位以確定$start1的值
if ($flag1 == 1 and $start1+$pagesize1 < $num1){
$start1 = $start1+$pagesize1;
}
if ($flag1 == 2 and $start1+$pagesize1 > 0){
$start1 = $start1-$pagesize1;
}
//判斷完畢

$query_proct_type = "SELECT art_title FROM article limit $start1, $pagesize1";
$result_proct_type = mysql_query($query_proct_type) or die("Query failed : " . mysql_error());
print ("<table width='100%'>
<tr>
<td valign='top' height = '188'>
<table width='100%'>");
while ($line_proct = mysql_fetch_array($result_proct_type, MYSQL_ASSOC)) {
print ("<tr>");
foreach ($line_proct as $col_value_proct_type) {

$result_proct = mysql_query ("SELECT * FROM article WHERE art_title ='$col_value_proct_type'");

$click_proct = mysql_fetch_array($result_proct) ;

print ("<td width='5%'><img border='0' src='../images/kind_list1.GIF' width='9' height='11'></td>");
print ("<td width='95%'><a href='view_article.php?art_title=$click_proct[0]' target='view_article'><span style='font-size:

9pt'>$click_proct[0]</span></a></td>");

}
print ("</tr>");
}

print ("</table>
</td></tr>");
//最後一頁START標識
if (($num1 % $pagesize1) != 0){
$lastpage1 = $num1 - ($num1 % $pagesize1);
}else{
$lastpage1 = $num1 - $pagesize1;
}
//代碼結束
//判斷頁數以及當前頁代碼
$pagenum1 = ceil($num1 / $pagesize1);

if ($start1 == 0){
$nowpage1 = 1;
}else{
$nowpage1 = ($start1 / $pagesize1) + 1;
}
//判斷結束
print ("<tr>
<td><hr color='#314DA5' size='1' noshade style='border-style: dotted; border-width: 1px; padding: 0'></td>
</tr>
<tr>
<td><p align='center'><span style='font-size: 9pt'>第<font color = '#FF0000'><b>$nowpage1</b></font>頁 | 共<font color =

'#FF0000'><b>$pagenum1</b></font>頁 | 共<font color = '#FF0000'><b>$num1</b></font>條記錄</span></td>
</tr>
<tr>
<td><p align='center'>");

//分頁顯示判斷部分
if ($start1 == 0 and $pagesize1 < $num1){
print ("<span style='font-size: 9pt'>【首頁】【上頁】<a href ='page_.php?flag1=1&start1=$start1'>【下頁】</a><a href ='page_.php?start1=$lastpage1'>【末頁】</a></span>");
}elseif ($start1 >= $num1-$pagesize1 and $pagesize1 < $num1){
print ("<span style='font-size: 9pt'><a href ='page_.php?start1=0'>【首頁】</a><a href ='page_.php?flag1=2&start1=$start1'>【上頁】</a>【下頁】【末頁】</span>");
}elseif ($pagesize1 >= $num1 ){
print ("<span style='font-size: 9pt'>【首頁】【上頁】【下頁】【末頁】</span>");
}else{
print ("<span style='font-size: 9pt'><a href ='page_.php?start1=0'>【首頁】</a><a href ='page_.php?flag1=2&start1=$start1'>【上頁】</a><a href ='page_.php?flag1=1&start1=$start1'>【下頁】</a><a href ='page_.php?start1=$lastpage1'>【末頁】</a></span>");
}
//分頁代碼判斷結束
print ("</td>
</tr></TABLE>");

mysql_free_result($result_proct_type);

?>
考慮到安全問題,資料庫信息部分已經省略。

運行結果請查看:
http://www.eternity2008.com/test/page_.php

有問題請留言,或登陸http://www.eternity2008.com論壇聯系。

⑨ 分頁出錯php+mysql

把你的資料庫連接 都發出來看看。

熱點內容
擔保中介源碼 發布:2025-02-08 17:14:37 瀏覽:411
手機存儲卡速度測試 發布:2025-02-08 17:02:57 瀏覽:25
洪恩編程 發布:2025-02-08 17:02:19 瀏覽:814
linux遠程式控制制 發布:2025-02-08 17:02:16 瀏覽:153
珠心算演算法 發布:2025-02-08 17:00:37 瀏覽:919
動態ip可以做伺服器么 發布:2025-02-08 17:00:33 瀏覽:220
oracle定義存儲過程 發布:2025-02-08 16:54:35 瀏覽:151
mac玩飢荒要什麼配置 發布:2025-02-08 16:52:18 瀏覽:682
androidattributeset 發布:2025-02-08 16:51:23 瀏覽:424
c語言調用函數返回值 發布:2025-02-08 16:51:19 瀏覽:791