..


Sponzorirani linkovi

Paginacija podataka iz MySQL db

Članak je napisao Max Bossi

I u našoj vodič za PHP , koji je u prethodnim člancima posvećena jeziku, već smo vidjeli kako iskoristiti na različite načine dobitnu kombinaciju PHP / MySQL.

Konkretno smo već vidjeli kako izvući podatke iz DB, ali smo "zaboravili" na adresu "problem" je vrlo čest, a to su: kada zapisa u bazi podataka posebno su brojni, kao što ih možete podijeliti u više stranica?

U ovom članku, u stvari, vidjet ćemo kako napraviti numeriranje velike količine podataka unutar danog tablica u našoj bazi podataka.
Uzmimo primjer: recimo da imate tablicu pod nazivom raspored sastoji se od samo tri polja: id, ime i telefonski broj, i reći da ovaj stol je naseljena sa 100 zapisa:

Kao što možete zamisliti da bi bilo nepraktično da želite izvući sve sto zapise u jednu stranicu, puno više udoban će ih ukloniti tako da ih podjele na više stranica s hrpa zapisa svaki.
Da biste to postigli, možemo koristiti zgodan značajka materinjem MySQL LIMIT funkcija koja nam omogućuje da točno odrediti koliko je i koji bilježi odabir. Raditi svoj posao LIMIT zahtijeva dva parametra: rekord od odlaska i broj zapisa za preuzimanje.

Pogledajmo praktičan primjer:






 <?







 / / Stvaranje varijabla koja određuje broj zapisa

 





 / / Za prikaz na svakoj stranici







 $ X_pag = 5;









 / / Dohvaćanje trenutnog broja stranice.







 / / Općenito koristite querystring







 $ Page = $ _GET ['stranica'];









 / / Provjerite je li $ stranice je pojačana ...







 / / ... Inače, ja dodijeliti vrijednost 1







 if ($ stranica) $ page = 1;

 







 / / I spajanje na bazu podataka







 $ Conn = mysql_connect ("localhost", "user", "password");







 mysql_select_db ("db_name", $ conn);









 / / Koristite mysql_num_rows brojati redaka u







 / / U tablici dnevnog reda







 $ All_rows = mysql_num_rows (mysql_query ("SELECT id FROM dnevni red"));









 / / Korištenje jednostavne matematičke operacije poziv







 / / Ukupan broj stranica







 All_pages = $ staviti strop ($ all_rows / $ x_pag);









 / / Obračun koji rekord za početak







 $ Prvo = ($ stranica - 1) * $ x_pag;









 / / Dohvatiti zapise za trenutnu stranicu ...







 / / Za korištenje LIMIT $ od prvi i brojati do $ x_pag







 $ Rs = mysql_query ("SELECT * FROM kalendar LIMIT $ prva, $ x_pag");







 $ NO = mysql_num_rows ($ RS);







 if ($ broj! = 0) {



  



 za ($ x = 0; $ x <$ n, $ x + +) {



    



 $ Red = mysql_fetch_assoc ($ RS);



    



 echo "<table> <tr>";



    



 echo "<td>".

 



 $ Redak ['id'].

 



 "</ Td>";



    



 echo "<td>".

 



 $ Redak ['ime'].

 



 "</ Td>";



    



 echo "<td>".

 



 $ Redak ['telefon'].

 



 "</ Td>";



    



 echo "</ tr> </ table>";



  



 }







 Else {}



  



 echo "Podaci nisu pronađeni!"







 }









 / / Ako Ukupno stranica više od 1 ...







 / / Plijesan na link da ide naprijed-nazad između različitih stranica!







 if ($ all_pages> 1) {



  



 if ($ stranica> 1) {



    



 echo "<a href=\"". $_SERVER['PHP_SELF']. "?pag=". $pag-1. "\">";



    





  



 }

 

  



 if ($ all_pages> $ stranica) {



    



 echo "<a href=\"". $_SERVER['PHP_SELF']. "?pag=". $pag + 1. "\">";



    



 echo "Sljedeća stranica </ a>";



  



 }

 





 }









 / / Zatvori priključak na DB







 mysql_close ($ conn);







 ?>



Kod je dobro komentirao i, stoga, ne vjerujem da postoji potreba za daljnje objašnjenje.

U istoj kategoriji ...
E-učenje
Linux Tečaj Linux Tečaj
Kompletan vodič za open-source sustava. Počevši od 49 €.
Tečaj MySQL Tečaj MySQL
Upravljanje open-source baza podataka. Počevši od 39 €.
PHP Tečaj PHP Tečaj
Cijeli tečaj za izradu dinamičkih Web stranica. Počevši od 49 €.
Sponzorirani linkovi