..
Obaja u nás sprievodca PHP , ktorý v predchádzajúcich článkoch venovaných jazyk, sme už videli, ako využiť rôznymi spôsobmi výhernú kombináciu PHP / MySQL.
Konkrétne sme už videli, ako získať dáta z DB, ale my sme "zabudli" na riešenie "problému" je veľmi časté, a to: keď sa záznamy v databáze sú obzvlášť početné, ako si môžete rozdeliť do viacerých stránok?
V tomto článku, v skutočnosti, uvidíme, ako urobiť stránkovanie veľkého množstva dát v rámci danej tabuľky v našej databáze.
Zoberme si príklad: Povedzme, že máte tabuľku s názvom schéma sa skladá z troch oblastí: id, meno a telefónne číslo, a hovoria, že táto tabuľka je naplnený 100 záznamov:

Pozrime sa na praktický príklad:
<?
/ / Vytvorenie premennej, ktorá určuje počet záznamov
/ / Ak chcete zobraziť na každej stránke
$ X_pag = 5;
/ / Načítať aktuálne číslo stránky.
/ / Všeobecne použiť QueryString
$ Page = $ _GET ['strana'];
/ / $ Page Skontrolujte, či je lepšie ...
/ / ... Inak som sa priradiť hodnotu 1
if ($ page) $ page = 1;
/ / Som sa pripojiť k databáze
$ Conn = mysql_connect ("localhost", "user", "password");
mysql_select_db ("DB_NAME", $ Conn);
/ / Použitie mysql_num_rows počítať riadky v
/ / V tabuľke agendy
$ All_rows = mysql_num_rows (mysql_query ("SELECT ID z rokovania"));
/ / Pomocou jednoduché matematické operácie call
/ / Celkový počet stránok
All_pages = $ ceil ($ all_rows / $ x_pag);
/ / Výpočet ktoré zaznamenávajú začať
$ Prvni = ($ strana - 1) * $ x_pag;
/ / Načítať záznamy pre aktuálnu stránku ...
/ / Pri použití LIMIT $ z prvej a počítať až $ x_pag
$ R = mysql_query ("SELECT * FROM kalendár LIMIT $ prvý, $ x_pag");
$ No = mysql_num_rows ($ rs);
if ($ číslo! = 0) {
for ($ x = 0, $ x <$ n, $ x + +) {
$ Row = mysql_fetch_assoc ($ rs);
echo "<tr>";
echo "<td>".
$ Row ['id'].
"</ Td>";
echo "<td>".
$ Row ['name'].
"</ Td>";
echo "<td>".
$ Row ['telefón'].
"</ Td>";
echo "</ tr> </ table>";
}
Else {}
echo "Neboli nájdené žiadne záznamy!"
}
/ / Ak je celková stránky sú viac než 1 ...
/ / Formovať odkaz ísť tam a späť medzi rôznymi stránkami!
if ($ all_pages> 1) {
if ($ strana> 1) {
echo "<a href=\"". $_SERVER['PHP_SELF']. "?pag=". $pag-1. "\">";
}
if ($ all_pages> $ page) {
echo "<a href=\"". $_SERVER['PHP_SELF']. "?pag=". $pag + 1. "\">";
echo "Next Page </ a>";
}
}
/ / Tesné spojenie s DB
mysql_close ($ Conn);
>
Kód je veľmi dobre skomentovanie, a preto si nemyslím, že je potrebné ďalšie vysvetlenie.
| |
Linux kurzu
Kompletný sprievodca pre open-source systém. Od 49 €. |
| |
Kurz MySQL
Správa open-source databázu. Od 39 €. |
| |
PHP kurzu
Celý kurz pre tvorbu dynamických webových stránok. Od 49 €. |