Tapez le code suivant entre le deuxième tag php et la requête de sélection; lt:?
$ = 1- rowsPerPage
$ PageNum = 1-
if (isset ($ _ GET ['page']))
{
PageNum $ = $ _GET ['page'] -
}
$ Offset = ($ pageNum - 1) * $ rowsPerPage-
Établir une variable appelée "$ RowsPerPage" et mettez-le égal à un. Cette variable sera utilisée pour limiter le nombre d'enregistrements dans la base de données à un par page. Établir une autre variable, "$ PageNum" et mettez-le égal à un. Créer un "si" déclaration pour créer chaque numéro de page. Établir une autre variable appelée "$ Offset" pour aider à modifier la "sélectionner" le numéro de requête d'enregistrements par page.
Ajouter la limite suivante à la "sélectionner" requête, après la "ORDER BY id" déclaration, comme indiqué:
LIMITE $ offset, $ rowsPerPage
Tapez un "compter" interroger pour compter le nombre d'enregistrements dans la base de données conforme à la "sélectionner" requête. Attribuer les résultats de la "compter" interroger à la variable "numrows de $". Établir une autre variable, "$ MaxPage" et diviser la valeur de "numrows de $" par "$ RowsPerPage". Arrondir les résultats à l'entier le plus proche en enfermant le diviseur avec le "ceil ()" fonction.
// Le nombre de lignes que nous avons en base de données
$ Query = "SELECT COUNT (de columnname) AS numrows FROM table ORDER BY id "-
$ Result = mysql_query ($ query) or die ("Erreur, requête a échoué Partie 2 ') -
$ Row = mysql_fetch_array ($ result, MYSQL_ASSOC) -
Numrows $ = $ row [''] numrows -
// Le nombre de pages que nous avons quand utilisant la pagination?
$ MaxPage = plafond ($ numrows / $ rowsPerPage);
Créer le lien à chaque page. Établir la variable "$ Self" et mettez-le égal à la page en cours en invoquant la variable superglobal et son paramètre $ _SERVER ['PHP_SELF']. Établir une variable vide, appelé "$ Nav". Créer un "pour" la mise en boucle la variable "$ La page" égal à un. État "$ Page doit être inférieure ou égale à la variable "$ MaxPage". Ensuite, réglez la page de compter automatiquement avec les signes plus doubles. Créer un "sinon" déclaration où, si la valeur de "$ La page" est égale à la valeur de la variable "$ PageNum", La variable "$ Nav" sera égal à la valeur de la variable "$ La page". Sinon, la variable "$ Nav" sera égal à la liaison dynamique.
// Imprimer le lien pour accéder à chaque page
$ Self = $ _SERVER ['PHP_SELF'] -
$ Nav = '' -
for ($ page = 1 $ la page lt; = $ maxPage- $ la page ++)
{
if ($ la page == $ pageNum)
{
$ Nav. = " $ La page "- // Pas besoin de créer un lien vers la page courante
}
autre
{
$ Nav. = " $ La page "-
}
}
Créez les liens de navigation pour le "première page", "dernière page", Le "enregistrement suivant" lien et la "précédent record" lien. Si la variable "$ PageNum" est supérieur à un, créer les liens dynamiques pour le numéro de page ($ la page), le "précédent record" lien (prev $) et le "premier enregistrement" lien ($ première). Si la variable "$ PageNum" a une valeur qui est inférieure à un, ne pas créer un lien pour que nous sommes sur la première page. Créez un autre "sinon" déclaration indiquant que si la variable "$ PageNum" est inférieure à la variable "$ MaxPage", Définissez la variable "$ La page" égale à la valeur de la variable "$ PageNum" plus un. Créez les liens dynamiques pour "enregistrement suivant" et "dernière page". Si la valeur de la variable "$ PageNum" est égale ou supérieure à la valeur de la variable "$ MaxPage", Ne pas créer les liens dynamiques, car nous sommes sur la dernière page.
if ($ pageNum gt; 1)
{
$ Page = $ pageNum - 1-
$ Prev = " [Précédent] ";
$ premières = " [Première Page] "-
}
autre
{
$ Prev = '' - // nous sommes sur la première page, ne pas imprimer lien précédent
$ Première = '' - // ni le premier lien de la page
}
if ($ pageNum lt; $ MaxPage)
{
$ Page = $ pageNum + 1-
$ Next = " [Suivant] "-
$ dernières = " [Dernière Page] "-
}
autre
{
$ Next = '' - // nous sommes sur la dernière page, ne pas imprimer lien suivant
'=' $ dernières - // ni le dernier lien de la page
}
Imprimer les liens de navigation et de fermer la connexion à la base de données:
// Imprimer les liens de navigation
echo $ nav. "
"-
echo $ prochain. " " . $ Prev. "
"-
echo $ première. " " . $ Last-
// Fermeture de la connexion à la base de données
mysql_close () -
Explication:
Les liens de navigation relient la page originale des pages dynamiques créées en divisant les enregistrements de la table de base de données, ou les lignes, dans les pages. Ensuite, tout ce qui reste est de créer des liens dynamiques vers chaque page et de les imprimer sur l'écran.