Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> PHP /MySQL Προγραμματισμός

PHP MySQL Σελιδοποίησης Tutorial

paginating αποτελέσματα MySQL με την PHP έχει μια σειρά από οφέλη . Πρώτα , επιταχύνει το ερώτημα MySQL, καθώς επιστρέφει μόνο ένα μικρό αριθμό των αποτελεσμάτων . Δεύτερον , βελτιώνει την εμπειρία του χρήστη , καθώς δείχνει ένα διαχειρίσιμο αριθμό των αποτελεσμάτων ανά σελίδα . Τρίτον , εξοικονομεί εύρος ζώνης από τη μη αποστολή αχρείαστα αποτελέσματα . Για τους λόγους αυτούς , πολλές τοποθεσίες , συμπεριλαμβανομένων των Google , Yahoo και WordPress , έχουν υιοθετήσει τη χρήση του . Για να χρησιμοποιήσετε MySQL σελιδοποίηση , θα πρέπει να χρησιμοποιήσετε το SQL " LIMIT " εντολή και οι "GET " παράμετροι στη διεύθυνση URL . Οδηγίες
Η 1

Δημιουργία πίνακα " τηλεφωνικό κατάλογο " στη βάση δεδομένων MySQL σας με τις στήλες " id ", " όνομα " και " τηλέφωνο ". Συμπλήρωση του πίνακα με λίγες συμμετοχές . Εδώ είναι τα ερωτήματα SQL για τη δημιουργία και τη συμπλήρωση του πίνακα , αντίστοιχα :

CREATE TABLE τηλεφωνικό κατάλογο ( ` ` int id ( 11 ) NOT NULL AUTO_INCREMENT , ` όνομα ` varchar ( 100 ) NOT NULL , ` ` varchar τηλεφώνου ( 20 ) NOT NULL , PRIMARY KEY ( ` id ` ) ) ?

INSERT INTO τηλεφωνικό κατάλογο ( ` όνομα ` , ` τηλέφωνο ` ) VALUES ( 'Jack' , '201 - 379 με 5406 » ) , ( « Τζέικ » , '331 - 123 - 5196 » ) , ( « John » , '222 - 342 - 3.250 ) ? 2

Δημιουργήστε ένα νέο αρχείο " pagination.php " και ανοίξτε το με ένα κείμενο editor , όπως το Notepad . Γράψτε ένα τμήμα του κώδικα που συνδέεται με το διακομιστή σας MySQL , χρησιμοποιώντας τη λειτουργία " mysql_connect " της PHP , και επιλέγει τη βάση δεδομένων που περιέχει τον πίνακα " τηλεφωνικό κατάλογο " , χρησιμοποιώντας τη λειτουργία " mysql_select_db " της PHP . Εδώ είναι ένα παράδειγμα :

mysql_connect ( ' localhost ' , 'admin' , ' password' ) ?

Mysql_select_db ( «δοκιμή ») ?

Αντικαταστήστε τις τέσσερις χορδές με όνομα του κεντρικού υπολογιστή σας , το όνομα χρήστη , κωδικό πρόσβασης και δεδομένων , αντίστοιχα .
εικόνων 3

Γράψτε ένα τμήμα του κώδικα που ορίζει τη μεταβλητή " $ rowsPerPage " με τον αριθμό των γραμμών που θα εμφανίζονται ανά σελίδα , σύνολα " $ currentPage " στη σελίδα ζητηθεί μέσω του " $ _GET [' page' ] " ή μηδέν, αν δεν σύνολα και " $ offset " προς την μετατόπιση από την οποία να φέρω σειρές από τη βάση δεδομένων , υπολογίζεται αφαιρώντας από ένα " $ currentPage " και πολλαπλασιάζοντας με " $ rowsPerPage . " Εδώ είναι ένα παράδειγμα :

$ rowsPerPage = 5 ?

$ CurrentPage = ( ( isset ( $ _GET [ σελίδα ]) && $ _GET [' page' ] > 0 ) ; ( int ) $ _GET [' page' ] : 1 ) ?

$ offset = ( $ currentPage - 1 ) * $ rowsPerPage ?
Η 4

Γράψτε μια γραμμή κώδικα που ανακτά " $ rowsPerPage " γραμμές ξεκινώντας από την αντιστάθμιση που καθορίζεται στο " $ offset " από τον πίνακα " τηλεφωνικό κατάλογο " εκτελώντας ένα ερώτημα "SELECT " μέσω της λειτουργίας " mysql_query " PHP και αποθηκεύει το αποτέλεσμα σε μια νέα μεταβλητή . Εδώ είναι ο κώδικας :

$ result = mysql_query ( " SELECT * FROM τηλεφωνικό κατάλογο ΟΡΙΟ '$ offset », « $ rowsPerPage . . . ) ?
5

Γράψτε μια " ενώ " βρόχο που ανακτά τις γραμμές από το σύνολο του ερωτήματος αποτέλεσμα , " $ αποτέλεσμα", χρησιμοποιώντας τη λειτουργία " mysql_fetch_assoc " PHP και τα εμφανίζει σε μια λίστα ή πίνακα . Εδώ είναι ένα παράδειγμα :

echo '

<;/tr > ' ?

while ( $ γραμμή = mysql_fetch_assoc ( $ result ) ) { echo

«

' ?

}

echo '

ID Όνομα Τηλέφωνο
» . $ γραμμή [ 'id' ] . ' » . $ γραμμή [ 'name'] . ' » . $ γραμμή [ «τηλέφωνο» ] . '
" ?
Η 6

Γράψτε ένα τμήμα του κώδικα που ανακτά τον αριθμό των καταχωρήσεων στον πίνακα εκτελώντας ένα " COUNT " ερώτημα μέσω της λειτουργίας " mysql_query " της PHP , υπολογίζει τον αριθμό των σελίδων διαιρώντας τον αριθμό των εισόδων από το " $ rowsPerPage " μεταβλητή και στρογγυλοποίηση προς τα πάνω και αποθηκεύει το αποτέλεσμα σε ένα μεταβλητή " $ totalPages . " Εδώ είναι ο κώδικας :

$ result = mysql_query ( " SELECT COUNT ( * ) AS μετράνε ΑΠΟ τηλεφωνικό κατάλογο ») ?

$ Γραμμή = mysql_fetch_assoc ( $ αποτέλεσμα) ?

$ totalPages = ceil ( $ γραμμή [ « μετράνε » ] /$ rowsPerPage ) ?
Η 7

Γράψτε δύο "αν" καταστάσεις: μία κατάσταση που εμφανίζει ένα " Προηγούμενη Σελίδα " σύνδεσμο και ένα που εμφανίζει ένα " Επόμενο σελίδα "link , αν η αντίστοιχη σελίδα υπάρχει ( δηλαδή , αν το" $ currentPage " είναι μεγαλύτερο από αυτό του" Προηγούμενη Σελίδα " και αν " $ currentPage " είναι μεγαλύτερη από " $ totalPages " για " Επόμενη Σελίδα " ) . Εδώ είναι ο κώδικας :

if ( $ currentPage > 1 ) {

echo ' Προηγούμενη Σελίδα ' ?

}

if ( $ currentPage <$ totalPages ) {

echo' Επόμενη Σελίδα '' ( $ currentPage +1) . ». ?

}
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα