色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

php mysqil分頁

錢斌斌1年前7瀏覽0評論

MySQL分頁技術是非常普遍的,在web應用程序中經常需要用到。 數據庫通常只返回一些記錄或整個結果集。 這是很合理的,因為如果您試圖返回大型結果集,則會導致大量的網絡流量和長時間的執行時間。但是,如果您返回的數據可能需要滾動或瀏覽,則需要一些形式的分頁。而 PHP mysqli 擴展為您提供了一個簡單的方式來實現它。

例如,假設在您的網絡應用程序中,您要顯示所有訂單的標題和摘要。 在數據庫中,您具有一個名為 “orders” 的表格。 這就是實現分頁的示例:

$ORDERS_PER_PAGE = 10;
$page_number = (isset($_GET['page_number']) ? intval($_GET['page_number']) : 0);
$offset = ($page_number * $ORDERS_PER_PAGE);

您可能已經看到,這里有 $ORDERS_PER_PAGE、$page_number 和 $offset 變量。 變量 $ORDERS_PER_PAGE 等于每一頁中訂單數的數量(在這種情況下,它是 10)。 $page_number 變量是您要檢索的頁面的數量。 最后,$offset 是您將在查詢中使用的記錄偏移量。 它是 $page_number*$ORDERS_PER_PAGE 的結果。 例如,如果您正在使用第三頁,它會像這樣:

$ORDERS_PER_PAGE = 10;
$page_number = 2; // 第三頁,但在PHP中,數組是從0開始的
$offset = ($page_number * $ORDERS_PER_PAGE);

該算法的結果是,$offset 的值為 20。您的查詢始終以該變量的值為起點。

接下來,您要設想如何編寫SQL查詢,才能正確地限制結果。 在這種情況下,可以編寫類似于以下代碼的查詢:

$sql = 'SELECT * FROM orders LIMIT ' . $ORDERS_PER_PAGE . ' OFFSET ' . $offset;

該查詢是您數據庫查詢的核心,并使用下面的代碼行:$data = mysqli_query($dbc, $sql);。 不用說,$dbc 是您在打開與您的MySQL數據庫的連接時使用的變量名。該代碼將返回當前頁面中所包含的記錄。因此,如果有10條記錄并且您的應用程序正在查看第三頁,則查詢將返回 21–30 條記錄。

在完成SQL查詢之后,您需要制作分頁控制器。并且,您需要為每頁顯示正確的鏈接。 利用分頁技術,可以輕松地為您的應用程序添加此功能,并提供所需的所有代碼。 您只需要確保調整三個變量就可以了。如果需要顯示 10 個訂單,您就不用關心頁碼或偏移量的實現細節。現在,您已經知道了如何使用PHP mysqli擴展來為您的互聯網應用程序提供分頁。 有關如何利用此技術和其他相關技術的更多信息和建議,請查看其他文章或網站上的更深入的分頁教程。