Recherhce tuto pour pagination avec PDO

gintoxic Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   -  
JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
tout est dans le titre...
si je demande cela, c'est que je ne trouve que des anciennes versions de code et que aux vues des choses PDO est la méthode à adopter...

merci à vous par avance



A voir également:

3 réponses

gign44 Messages postés 124 Date d'inscription   Statut Membre Dernière intervention   5
 
Bonjour,
Une petite recherche sur google et hop, plein de tuto !

https://www.lmgtfy.app/?q=pagination+pdo+php

Cordialement
0
gintoxic Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   10
 
ah weh !? sympa et je peux apercevoir que quasiment tous les liens sont violets, donc visités et donc que je n'ai pas trouvé bonheur ;)
merci tout de emme

ps : la finalité dans mon cas est que j'utilise des textes en brut pas des champs de table (trop facile sinon :s )
0
JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   228
 
Salut,

Un tuto il y'en a pleins, sinon un code source !
0
gintoxic Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   10
 
salut, j'ai pas trouvé de tuto pour découper des textes en bdd ....
0
JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   228
 
Découper des textes ?!!
0
gintoxic Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   10
 
oui les découper de telle sorte, que les textes sont affichés en plusieurs pages et non en un seul bloc long
0
JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   228
 
Ok, ce n'est pas de ce type de pagination que je parlais, mais bon !

Mais c'est aussi simple a faire ...

Il suffit de connaitre :
- Le nombre total de caractères ou de lignes que ton texte contient.
- Le nombre de caractères ou de lignes a afficher dans chaque page.
- Le numéro de la page en cours.

ça ressemble un peut a ça ...
Il faut biensure ajouter les conditions qui manquent, et optimiser l'affichage de la pagination.

$nbrDeCaractereParPage = 500;
$pageEnCours = (isset($_GET['page'])) ? $_GET['page'] : 1;
$debut = $nbrDeCaractereParPage*$pageEnCours-$nbrDeCaractereParPage;

// Etape 1 : Calculer le nombre total de caractères que contient le texte de l'article en cours
$req = $db->prepare('SELECT LEN(texte) AS tot FROM table WHERE article_id = :id');
$req->bindParam(':id', $_GET['articleId'], PDO::PARAM_INT);
$req->execute();
$datas = $req->fetch();
$total = $datas['tot'];

// Etape 2 : Slection de la partie voulu
$req = $db->prepare('SELECT SUBSTRING(texte, :debut, :nbr) AS txt FROM table WHERE article_id = :id');
$req->bindParam(':debut', $debut, PDO::PARAM_INT);
$req->bindParam(':nbr', $nbrDeCaractereParPage, PDO::PARAM_INT);
$req->bindParam(':id', $_GET['articleId'], PDO::PARAM_INT);
$req->execute();

// Etape 3 : Creation de la pagination
$nombreDePages = ceil($total/$nbrDeCaractereParPage);
for($i = 1; $i < $nombreDePages; $i++)
echo '<a href="page.php?articleId=' . $_GET['articleId'] . '&page=' . $i . '">' . $i . '</a> ';
0
gintoxic Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   10
 
ok merci
j'aurais besoin de comprendre des choses avant de tester avec mes parametres.

- faut-il créer ce $_GET['page'] ou bien je prends les parametres que j'ai en cours (id est : "index.php?titre=Retrouvailles" par exemple) ? dans ce cas là $_GET['titre']....

- j'ai un id_chapitre mais je ne sais pas trop pourquoi toute les valeur de ce champ sont à 0..
je ne peux pas l'autoincrémenter dans la table... si tu/vous avez une solution ?

je poste le lien vers le site pour que vous constatiez ce que je veux faire et vous pourrez voir le $_get de chaque chapitre

merci par avance
0
mino2262 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
non, je ne pense pas que la méthode PDO soit la meilleure,

pour les tuto, cherche un peu
0
gintoxic Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   10
 
ah mais si je poste ici, c'est que j'ai recherché activement ou bien je n'ai pas les bons mots-clés ...
0