Svp Comment faire un système de pagination automatique et sans mysql ?
Svp Comment faire un système de pagination automatique et sans mysql ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part echo 'page 1 2 3 4 5';
Plus sérieusement et sans vouloir t'offenser, si tu donnais un peu plus de précisions, on pourrait peut-être t'aider![]()
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.
Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]
tu veux dire sans ou avec mysql ?
Si c'est sans, bien ca dépend de la manière sont stockées tes données (si c'est en dur, tu risques de devoir te taper la pagination à la main).
Si c'est avec mysql , ben julp t'a redirigé vers le bon lien à suivre![]()
jai un livre d'or et je veut faire page 1 2 3 4 5 6
automatic
ce ficher
<!--dubit>
allo je mapelle amine
<!--fine>
<!--dubit>
dfdsfdsf
<!--fine>
<!--dubit>
sfdsfdsfsdf
<!--fine>
<!--dubit>
dsfsdfsdfsd
<!--fine>
<!--dubit>
fdsfsdfsdf
<!--fine>
je veut compter ca si il ya 3 <!--dubit> le php donne page 2 avec le rest sur le 2 merci
Il est quand meme 14h00...
Je ne comprends rien donc soit c'est mal expliqué, soit je dors encore...
Pour faire un système de pagination...
Il faut :
Un nombre total d'enregistrements
Un nombre max d'enregistrement par page...
En divisant l'un par l'autre on obtiens le nombre de page voulu.
D'ou proviennent les enregistrements ? Comment les comptes-tu ?
Avec cela on pourra te venir en aide.
@+
cadou
Si votre fichier suit le format indiqué c'est une tâche pour preg_match_all (expressions régulières). Un fichier XML aurait peut être été plus judicieux, bien que dans les deux cas, une taille importante du fichier n'ira pas sans poser problème.
Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <style type="text/css"> ul.pagination { text-align: center; /*border: 1px dashed blue;*/ } ul.pagination li { display: inline; margin: 10px 5px; padding: 5px; text-align: center; /*border: 1px solid green;*/ } ul.pagination li.page-courante { font-weight: bold; } </style>
Voilà pour le principe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <?php define('NB_PAR_PAGE', 2); define('FICHIER', 'mon_fichier.txt'); $page = isset($_GET['page']) ? intval($_GET['page']) : 1; $debut = NB_PAR_PAGE * ($page - 1); $contenu = file_get_contents(FICHIER); $nb = preg_match_all('~<!--dubit>(.*)<!--fine>~sU', $contenu, $matches, PREG_SET_ORDER); for ($i = 0; $i < NB_PAR_PAGE && ($i + $debut) < $nb; $i++) { printf('Commentaire %d : %s<br />', $i + $debut + 1, $matches[$i + $debut][1]); } $derniere_page = ceil($nb / NB_PAR_PAGE); if ($nb > NB_PAR_PAGE) { echo '<ul class="pagination">'; if ($page > 1) { echo '<li><a href="' . basename(__FILE__) . '?page=' . ($page - 1) . '">Page précédente</a></li>'; } for ($i = 1; $i <= $derniere_page; $i++) { if ($i == $page) { echo '<li class="page-courante">' . $i . '</li>'; } else { echo '<li><a href="' . basename(__FILE__) . '?page=' . $i . '">' . $i . '</a></li>'; } } if ($page < $derniere_page) { echo '<li><a href="' . basename(__FILE__) . '?page=' . ($page + 1) . '">Page suivante</a></li>'; } echo '</ul>'; }![]()
Partager