php的分頁顯示資料庫的問題,有代碼,求分析分析

來源:互聯網
上載者:User
第一次開啟的時候,會出現一個警告提示。原因是Undefined index: page
怎麼解決傳值的問題啊?

代碼如下


include("conn.php");
$perNumber=10; //每頁顯示的記錄數
$page=$_GET['page']; //獲得當前的頁面值
$count=mysqli_query($conn,"select count(*) from user"); //獲得記錄總數
$rs=mysqli_fetch_array($count);
$totalNumber=$rs[0];
$totalPage=ceil($totalNumber/$perNumber); //計算出總頁數
if (!isset($page)) {
$page=1;
} //如果沒有值,則賦值1
$startCount=($page-1)*$perNumber; //分頁開始,根據此方法計算出開始的記錄
$result=mysqli_query($conn,"select * from user limit $startCount,$perNumber"); //根據前面的計算出開始的記錄和記錄數
while ($row=mysqli_fetch_array($result)) {
echo "user_id:".$row['user_id']." ";
echo "user_name:".$row['user_name']."
"; //顯示資料庫的內容
}
if ($page != 1) { //頁數不等於1
?>
">上一頁
}
for ($i=1;$i<=$totalPage;$i++) { //迴圈顯示出頁面
?>
">
}
if ($page<$totalPage) { //如果page小於總頁數,顯示下一頁連結
?>
">下一頁
}
?>






回複討論(解決方案)

$page=$_GET['page']; //獲得當前的頁面值
改為
$page=isset($_GET['page'])? $_GET['page'] : 1; //獲得當前的頁面值

$page= @$_GET['page']; //獲得當前的頁面值

改成
$page=isset($_GET['page']) ? $_GET['page'] : 1; //獲得當前的頁面值
也可以,但是
if (!isset($page)) {
$page=1;
} //如果沒有值,則賦值1
就多餘了

你沒有檢查 page 小於或等於 0 的情況,程式存在潛在的問題

感謝樓上2位大大!

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.