par
Babounet » 09 sept. 2009, 22:57
Si tu enlève le LIMIT, ta seconde requête te renvoie TOUS les enregistrements dont la ref précèdent l'enregistrement courant.
Avec ton LIMIT 1, elle ne t'en renvoie que le premier enregistrement correspondant à la requête, en l'occurrence, l'enregistrement ayant la ref la plus petite.
Essaye de rajouter un ORDER BY.
Résultat:
$query_rs_previous = "SELECT articles.reference, articles.IDarticle FROM articles WHERE articles.reference < '".$row_rsarticles['reference']."' ORDER BY articles.reference DESC LIMIT 1";
De cette manière, la requête recherchera tous les résultats dont la ref est inférieure (comme précédemment) mais cette fois triés en sens inverse, c'est à dire, l'enregistrement aayant la référence la plus proche de ton enregistrement actuel en premier (et c'est donc celui-ci que ton LIMIT 1 te renverra)
Si tu enlève le LIMIT, ta seconde requête te renvoie TOUS les enregistrements dont la ref précèdent l'enregistrement courant.
Avec ton LIMIT 1, elle ne t'en renvoie que le premier enregistrement correspondant à la requête, en l'occurrence, l'enregistrement ayant la ref la plus petite.
Essaye de rajouter un ORDER BY.
Résultat:
[php]$query_rs_previous = "SELECT articles.reference, articles.IDarticle FROM articles WHERE articles.reference < '".$row_rsarticles['reference']."' ORDER BY articles.reference DESC LIMIT 1";[/php]
De cette manière, la requête recherchera tous les résultats dont la ref est inférieure (comme précédemment) mais cette fois triés en sens inverse, c'est à dire, l'enregistrement aayant la référence la plus proche de ton enregistrement actuel en premier (et c'est donc celui-ci que ton LIMIT 1 te renverra)