Hello les codasseurs & codasseuses
Je ne trouve pas comment venir à bout de mon problème, avec $i++ qui skip / zappe certains enregistrements : Ceux de fin.
Contexte : J'affiche 20 lignes issues de ma db. Le bouton "Afficher plus", charge les 20 lignes suivantes.
Au lieu que les nouvelles lignes chargées commencent par $i = 21, elles commencent à $i =22, et terminent à $i =40. Il me manque le dernier enregistrement de la séquence requise, et non pas le premier.
Puis lorsque je clique à nouveau sur "Afficher plus",
les nouvelles lignes comment à $i = 44, et terminent à $i = 60;
Là idem, il me manque les 4 derniers enregistrements de la séquence...
Je reclique, et $i de départ = 63, et $i de fin = 80.
Là idem, il me manque les 3 derniers enregistrements de la séquence...
$_POST['last_counter']; m'indique à chaque fois les bonnes valeurs, pas de soucis à ce niveau.
Comment solutionner ce problème ? A quoi est-ce du ?
Merci beaucoup, A vous lire,
Modifié par Vape6 (22 Apr 2022 - 16:26)
Je ne trouve pas comment venir à bout de mon problème, avec $i++ qui skip / zappe certains enregistrements : Ceux de fin.
Contexte : J'affiche 20 lignes issues de ma db. Le bouton "Afficher plus", charge les 20 lignes suivantes.
$i = $_POST['last_counter']; // récupéré depuis le bouton "Afficher plus"
$in_here = str_repeat('?,', count($ids) - 1) . '?';
$sql = "SELECT A.*, P.pays FROM animaux A
LEFT JOIN pays P ON p. t_id = A. t_id
WHERE A.zone IN ($in_here )
GROUP BY (case when NULLIF(zz, '') IS NOT NULL then zz else zone end)
$order_by LIMIT 0, 20 ";
if (! $stmt = $pdo->prepare($sql)) {die(var_export($pdo->errorinfo(), TRUE));}
$stmt->execute($ids);
while ($row = $stmt -> fetch(PDO::FETCH_ASSOC))
{ .......
$i++;
}
Au lieu que les nouvelles lignes chargées commencent par $i = 21, elles commencent à $i =22, et terminent à $i =40. Il me manque le dernier enregistrement de la séquence requise, et non pas le premier.
Puis lorsque je clique à nouveau sur "Afficher plus",
les nouvelles lignes comment à $i = 44, et terminent à $i = 60;
Là idem, il me manque les 4 derniers enregistrements de la séquence...
Je reclique, et $i de départ = 63, et $i de fin = 80.
Là idem, il me manque les 3 derniers enregistrements de la séquence...
$_POST['last_counter']; m'indique à chaque fois les bonnes valeurs, pas de soucis à ce niveau.
Comment solutionner ce problème ? A quoi est-ce du ?
Merci beaucoup, A vous lire,
Modifié par Vape6 (22 Apr 2022 - 16:26)