|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
![]() ![]() Jean-Pierre Inscription : août 2005 Messages : 333 ![]() |
Bonjour,
Petite problème à résoudre, probablement bien plus simple vu d'ailleurs La situation : Une table MySQL classique, table_news, avec N rangées et une clé primaire entière autoincrementée. Le problème : Dans cette table, des rangées sont suceptibles d'être effacées, et leur clé avec, ce qui provoquera des écarts dans l'autoincrémentation. Je souhaite que lorsque le visiteur clique sur une news, il obtienne sur la même page, la news selectionnée ainsi que deux liens, l'un vers la news précédente (si elle existe) et l'autre vers la news suivante (si elle existe). J'ai essayé de jouer sur la close "LIMIT", en indiquant respectivement que la news suivante (théorique) est l'ID courant de la news + 1 donc, ce qui donne ce genre de requête Code :
Code :
Une autre solution (bêtise=) consiterait à obtenir systèmatiquement tous les résultats de la table, pour ensuite jouer sur le pointeur interne avec des num_rows et autres data_seek... Autre solution ? changer le type de clé ? utiliser un autre type de champ unique ? Il me manque un élément...J'ai du passé à coté de la soluce plus d'une fois... Merci d'avance ! |
||||
|
|
00
|
|
|
#2 | ||||
|
Membre éclairé
![]() Inscription : novembre 2004 Messages : 373 ![]() |
Heu une piste :
Les éléments précédents : Code :
ET inverse pour les suivants Code :
__________________
Take it HiSy |
||||
|
|
00
|
|
|
#3 | ||
|
Membre confirmé
![]() Inscription : février 2004 Messages : 237 ![]() |
Salut,
Tu dois passer par une requête qui va chercher l'id de la news précédente ( s'il y en a une ) et l'id de la news suivante ( idem ) . D'une façon générale tu peux l'obtenir comme ça : $mon_id_news = id de la news actuellement affichée News précédente : Citation:
Citation:
Edit : la solution de hisy marche égualement, à toi de voir laquelle est la plus rapide. |
||
|
|
00
|
|
|
#4 |
![]() ![]() Jean-Pierre Inscription : août 2005 Messages : 333 ![]() |
Merci beaucoup pour vos soluces
Bonne après-midi ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com