Accueil > Forum > > > > lien suivant et précédent
lien suivant et précédent
samedi 3 février 2007 à 11:03:46 |
lien suivant et précédent

titeuf974
|
Bonjour!! Voila, en fait je bute sur un petit problème... j'ai des données enregistrés dasn une table .
j'affiche donc sur une page un enregistrement qui a l'id 5 par exemple.
je voudrai faire un lien pour afficher le precedent et le suivant.
alors moi je pensais qu'il suffisait de faire un lien avec
comme variable id-1 (pour precedent) et id+1 (pour suivant).
le problème est que j'efface régulièrement des données, donc je me retrouve avecdes trous... par exemple, j'ai efface celui qui a l'id 4, donc si je fait
precedent avec la methode cité plus haut, j'aurai une erreur !!! :( je voudrai donc pouvoir trouver une methode pour trouver l'id le precedent et suivant le plus proche.
Une idée?? une piste??? Ca serait bien sympa!!!! merci d'avance.
|
|
samedi 3 février 2007 à 11:26:12 |
Re : lien suivant et précédent

Benz
|
Bonjour titeuf974, Je ne connais pas la procédure exacte pour faire ce que tu veux en PHP, mais tu peux chercher du coté de la pagination. Ce qu'il faut je pense, c'est faire une requete sur la totalité des fiches dont tu as besoin et n'en affiche qu'une par page. C'est le même principe que lorsque tu as une très grande liste mais que pour des raison pratiques tu n'en affiche que 20 par page. Exactement ce que fais ce site dans la page de résultat par exemple. Là, tu n'auras plus aucun problème avec tes trous. C'est juste une piste, mais j'espère que ca t'aidera à trouver le bon code. Benoit
Besoin d'argent ? Domicile-Job >> Travail à domicile Envie de jouer ? Le Sanktuaire >> Ressources jeux de roles
|
|
samedi 3 février 2007 à 11:51:18 |
Re : lien suivant et précédent

titeuf974
|
je vois ce que tu veux dire. c'est pas bête! je vais jeter un oeil pr voir s'il y possibilité de coder un truc...
merci!
|
|
samedi 3 février 2007 à 11:57:33 |
Re : lien suivant et précédent

malalam
|
Réponse acceptée !
Hello,
Ou bien tu passes ton id - ou + 1, avec la direction (-, ou +). Et quand tu réaffiches ta page avec ces 2 nouvelles variables, tu fais ta requête de cette façon, pour aller chercher l'ID correct : si $_GET['dir'] === '+' alors : SELECT MIN(id) FROM tatable WHERE id >= $_GET['id'] si $_GET['dir'] === '-' alors : SELECT MAX(id) FROM tatable WHERE id <= $_GET['id']
|
|
dimanche 4 février 2007 à 04:53:45 |
Re : lien suivant et précédent

titeuf425
|
Bonjour! j'ai testé un peu toutes les solutions, pour arriver à un résultat qui ressemble à ça :
//je fais la requète
$query = "SELECT id_article,id_item,titre_article,titre_item FROM table1,table2 WHERE ...... $result = mysql_query($query) .......
//cette requète me donne tous les article d'un thème. ensuite j'éxécute la requète et je crée un tableau qui contient le résultat de ma requète
$array_resultat = array();
foreach($result as $contents) { array_push($array_resultat,array("id_article" => $contents['id_article'],"id_item" => $contents['id_item'], "titre_article" => $contents['titre_article'])); }
//ensuite je parcours le tableau des résultats avec une boucle for et j'affiche mes liens
$nbre = count($array_resultat);
for($i=0;$i<$nbre;$i++) { //lien précédent. $id_article, est l'article courant que je passe en get if($array_resultat[$i]['id_article']== $idarticle AND $i-1>=0) { echo $array_resultat[$i-1]['titre_article']; } //lien suivant. if($array_resultat[$i]['id_article']== $idarticle AND $i+1<$nbre) { echo $array_resultat[$i+1]['titre_article']; } }
Voila. un peut tiré par les cheveux je pense, mais ça fonctionne... Qu'en pensez vous???
Merci...
|
|
lundi 5 février 2007 à 20:38:16 |
Re : lien suivant et précédent

Kdecherf
|
Bonsoir, une autre possibilité : $previous = 0; $next = 0; $request = mysql_query("La requete ... ORDER `id` ASC"); while ($rest = mysql_fetch_array($request)) { if ($rest['id'] == $idrecherche) { // code à executer } else if ($rest['id'] < $idrecherche) { $previous = $rest['id']; } else if ($rest['id'] > $idrecherche) { $next = $rest['id']; } } // On affiche le résultat final, avec pour id précédent $previous, et suivant $next Ici on n'a pas besoin de comparer les valeurs existantes avec les valeurs allant être assignées à $next ou $previous puisque les requêtes sont classées selon l'ordre croissant 'id' (nécesssite que le champ soit de type INT ou un dérivé de INT) Pas testé, mais normalement opérationnel  Cordialement, Kdecherf
|
|
mardi 6 février 2007 à 03:19:13 |
Re : lien suivant et précédent

titeuf974
|
bonjour!! je vais tester votre solution... je vous tiens au courant!! merci!!
|
|
mardi 6 février 2007 à 08:01:15 |
Re : lien suivant et précédent

malalam
|
Heu...cette dernière solution est particulièrement bourrine...sans vouloit vexer son auteur, on peut difficilement faire pire. Je te la déconseille. Tu parcours TOUT ton jeu de résultat dans une boucle pour en récupérer 2 valeurs seulement...Et en plus, le résultat va être faux.($next sera tjrs le dernier id de ta base, jamais le "prochain" par rapport à ton id courant).
|
|
mardi 6 février 2007 à 10:50:33 |
Re : lien suivant et précédent

titeuf974
|
ahhhh... vu comme ça... et que pensez vous de ma solution ?? Potable ou peut faire mieux ?? Je viens de réussir à faire fonctionner votre solution. Mon script générait une erreur dont je viens de trouver l'origine. Votre solution m'a l'air bien plus simple en fait....
cordialement...
|
|
mardi 6 février 2007 à 16:44:36 |
Re : lien suivant et précédent

malalam
|
Ma solution est plus légère, mais bon. Là tu fais de grosses boucles pour pas grandchose.
|
|
Cette discussion est classée dans : problème, lien, id, precedent, précédent
Répondre à ce message
Sujets en rapport avec ce message
Opération sur une variable lors de son passage dans un lien ? [ par Misutsu ]
Bonsoir :)Voilà, je me demandais s'il était possible de faire une opération sur une variable lors de son passage dans un lien donc ex : J'ai ça :"bidu
Problème avec un lien en php [ par iomega ]
Bonjour à tous j'ai un problème avec ce lien qui contient du phpj'ai ce message d'erreurErreur attendu ")" quelqu'un a-t-il une idéemerci de votre aid
help! [ par LeRoux ]
Je ne suis pas un pro. de PHP, mais j'aimerais savoir comment ouvrir, dans une page html, un id que le n'on connait pas auparavent: j'ai une feuille d
problème de redirection [ par kwak ]
Bonjour à tous,je me trouve depuis quelques temps déjà confronté à un problème de redirection. Ici le problème se pose pour rediriger l'utilisateur se
session + formulaire [ par Orcus ]
G un problème très simple, mais je n'arrive pas à le résoudre et je ne vois pas le problème ! J'ouvre ma page a.php (aucun problème), je remplie le fo
Ahh problème de lien ou de session Ahh Comprend pas [ par Tiriel ]
Ahh Salut!!!J'ai un problème avec le lien ci-dessous :function creertablig($result){?><br
Frame qui marche pas !? [ par AshenShugar ]
Salut tout le monde,mon petit problème est le suivant. J'ai une fenêtre avec des frames, une en haut pour la pub, une a gauche pour le menu et a droit
lien du type nom.php?id=x [ par apego ]
Bonjour,Je débute et je n'arrive pas à cerber ce que représentent les caractères qui suivent les url ...... je m'explique :Pour ce lien :http://www.ph
problème avec tablo et balise select dynamique [ par lookoom ]
salutj'me casse les dents sur un script et j'viens chercher un peu d'aide !!j'ai un tablo avec une colonne contenant des "select" pour choisir le nomb
Order by problème [ par Developpator ]
Hello,Je fais une requête sur une table comprenant id de type char. Lorsque le sélectionne tous les champs de ma table et que je décide de les trier e
Livres en rapport
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Forum
RE : SONDAGE..RE : SONDAGE.. par phpAnonyme
Cliquez pour lire la suite par phpAnonyme RE : SONDAGE..RE : SONDAGE.. par TychoBrahe
Cliquez pour lire la suite par TychoBrahe
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|