..


Rėmėjų nuorodos

Numeracija duomenis iš MySQL db

Straipsnį parašė Max Bossi

Tiek mūsų vadovas PHP , kuri ankstesniuose straipsniuose skirta kalba, jau matėme, kaip panaudoti įvairiais būdais kombinacija PHP / MySQL.

Tiksliau jau matėme, kaip gauti duomenis iš DB, bet mes turime "pamiršote" spręsti "problema" yra labai dažnas, o būtent: kai duomenų bazėje įrašai yra ypač daug, kaip jūs galite suskirstyti jas į kelis puslapius?

Šiame straipsnyje, iš tiesų, pamatysime, kaip padaryti didelį kiekį duomenų numeracija per tam tikrą lentelę mūsų duomenų bazėje.
Paimkime pavyzdį: tarkime, jūs turite lentelę, pavadintą grafiką sudaro tik trijose srityse: ID, vardas, pavardė ir telefono numerį, ir pasakyti, kad šioje lentelėje yra apgyvendintos su 100 įrašai:

Kaip galite įsivaizduoti, kad būtų nepraktiška norite išskleisti visus 100 įrašus per vieną puslapį, daug patogiau būtų pašalinti juos dalijant jas į kelis puslapius su įrašus kiekvieną krūva.
Norėdami tai padaryti, mes naudojame patogi funkcija gimtoji MySQL TERMINAS funkcija, kuri leidžia mums tiksliai nustatyti, kiek ir kokius įrašus, pasirinkite. Norėdami tai padaryti savo darbą TERMINAS reikia dviejų parametrų: išvykimo įrašyti ir įrašų gauti, skaičių.

Pažiūrėkime Praktinis pavyzdys:






 <?







 / / Sukurti kintamasis, kuriame įrašų skaičius

 





 / / Norėdami rodyti kiekvieno puslapio







 $ X_pag = 5;









 / / Gauti dabartinio puslapio numerį.







 / / Bendrai naudoti eilutės užklausos







 $ Puslapis = $ _GET ['puslapis'];









 / / Tikrinama, jei $ puslapis yra tvirtesnis ...







 / / ... Priešingu atveju, aš priskirti reikšmę 1







 if ($ puslapis) $ puslapis = 1;

 







 / / Aš prisijungti prie duomenų bazės







 $ Conn = mysql_connect ("localhost", "vartotojo", "slaptažodis");







 mysql_select_db ("db_name", $ conn);









 / / Naudoti mysql_num_rows suskaičiuoti eilučių







 Lentelėje Darbotvarkė / /







 $ All_rows = mysql_num_rows (mysql_query ("SELECT id FROM darbotvarkė"));









 / / Naudojant paprastą matematinę operaciją skambinti







 / / Bendras puslapių skaičius







 All_pages = $ lubų ($ all_rows / $ x_pag);









 / / Apskaičiavimas, kuri įrašyti pradėti







 $ Pirmas = ($ page - 1) * $ x_pag;









 / / Gauti dabartinės puslapis įrašus ...







 Jei naudojant / / TERMINAS $ nuo pirmos ir skaičiuoti iki $ x_pag







 $ R = mysql_query ("SELECT * FROM kalendorius LIMIT $ pirma, $ x_pag");







 $ Nr = mysql_num_rows ($ rs);







 if ($ numerį! = 0) {



  



 for ($ x = 0; $ x <$ n $ x + +) {



    



 $ Row = mysql_fetch_assoc ($ rs);



    



 echo "<table> <tr>";



    



 echo "<td>".

 



 $ Row ['id'].

 



 "</ Td>";



    



 echo "<td>".

 



 $ Row ['vardas'].

 



 "</ Td>";



    



 echo "<td>".

 



 $ Row ['Telefonas'].

 



 "</ Td>";



    



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



  



 }







 Else {}



  



 echo "Nėra įrašų nerasta!"







 }









 / / Jei Puslapių iš viso yra daugiau nei 1 ...







 / / Mold nuorodą, grįžti atgal ir pirmyn tarp skirtingus puslapius!







 if ($ all_pages> 1) {



  



 if ($ puslapis> 1) {



    



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



    





  



 }

 

  



 if ($ all_pages> $ puslapis) {



    



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



    



 echo "Sekantis puslapis </ a>";



  



 }

 





 }









 / / Glaudų ryšį su DB







 mysql_close ($ conn);







 ?>



Kodas yra gerai komentarų, todėl nemanau, kad yra tolesnio paaiškinimo reikia.

Tos pačios kategorijos ...
E-mokymasis
"Linux" (kurso) "Linux" (kurso)
Užbaigti vadovą į atviro kodo sistemą. Pradedant nuo 49 €.
MySQL (kurso) MySQL (kurso)
Valdymas atviro kodo duomenų bazėje. Nuo 39 €.
PHP (kurso) PHP (kurso)
Visas kursas kurti dinaminius interneto svetainių. Pradedant nuo 49 €.
Rėmėjų nuorodos