ligne suivante et précédante -> Mysql - PHP - Programmation
Marsh Posté le 14-09-2004 à 16:12:27
ReplyMarsh Posté le 14-09-2004 à 16:16:23
SELECT * FROM tableX WHERE id='".$id-1."' OR id='".$id+1."'
Marsh Posté le 14-09-2004 à 16:21:38
Hmmm... 
 
SELECT * FROM tableX WHERE id < '".$id."' ORDER BY id DESC LIMIT 1 
SELECT * FROM tableX WHERE id > '".$id."' ORDER BY id ASC LIMIT 1 
 
?
Marsh Posté le 14-09-2004 à 16:24:01
  J'y avais vraiment pas du tout pensé !!!!!! (je suis burne)
 J'y avais vraiment pas du tout pensé !!!!!! (je suis burne)
Marsh Posté le 14-09-2004 à 16:30:09
Euh !  
 
Et maintenant, si je désire afficher le numéro de l'entrée  
( entrée x sur n ) 
 
Dois-je faire une requete SELECT count(*) FROM tableX 
et une boucle while($a = mysql_fetch_array($res) && $a != $id) $x++; ?
Marsh Posté le 14-09-2004 à 16:31:38
heu non 
 
select id from blablabla 
apres un mysql_fetch_xxxx SANS boucle 
 
et tu recupere l'id. 
 
tu veut recuperer qu'un ID avant ET apres, c'est ca 
Marsh Posté le 14-09-2004 à 16:09:41
C'est peut-être une question toute bête à première vue mais j'ai pas encore trouver d'astuce pour minimiser le code php !
1.
Imagions une table avec un champ ID en autoincrement, certaines entrées on peut-être été supprimées impliquant la non continuité dans les id.
2.
Une précédente requete me fourni un id du champ ID existant !
3.
Je souhaite sélectionner l'entrée juste avant l'entrée pointée par ID et l'ID située juste après celle pointée par ID
4. Comment faire ?
Ma première idée fut la suivante:
Mais faut quand même avouer que c'est le merdier !!!
Ne peut-on pas acceder au numéro de l'enregistrement ?
Message édité par kalios le 14-09-2004 à 16:22:39
---------------
.:coin:.