Bouton Précédent - Suivant

Eléphanteau du PHP | 23 Messages

07 mai 2007, 16:56

Bjr à tous,

Voilà ce que je cherche à faire :
Suite à ma requete SQL du genre "select id from table", j'aimerais pouvoir utiliser un bouton précédent et un bouton suivant qui me permettront de passer d'un enregistrement(id de ma requete) à l'autre.

Comment rendre cela réalisable? qq un sait-il m'aider?

Merci d'avance

Mammouth du PHP | 991 Messages

07 mai 2007, 17:28

tu peux mettre 'WHERE id='.$_GET[id].''

et puis un lien qui s' incrémente ou se décrémenter en fonction de l'id actuel
DevOps, Symfony4, Hoa

Eléphanteau du PHP | 23 Messages

07 mai 2007, 17:36

Merci d'éclairer qq peu ma lanterne.
Je vois où tu veux en venir, mais pourrais-tu me donner qq détails supplémentaires?

un grand merci

Eléphanteau du PHP | 23 Messages

07 mai 2007, 17:39

je me disais qu'un incrémentation m'oblige à avoir des ID qui se suivent(1,2,3...), et malheureusement ca ne sera pas toujours le cas car certain enregistrement devront être supprimés

Mammouth du PHP | 991 Messages

07 mai 2007, 18:00

en effet c'est vrai que c'est genant tu peut alors essayer cette methode:

- Lister dans un array tous les id .
- Puis selectionner l'id en cours de traitement
- pour le bouton suivant par exemple selectionner la ligne suivant donc un id
- faire une requete sur l'idée

mais pour une approche "script" je ne sais pas trop comment faire je plancherai sur le sujet ce soir

@+ thehawk
DevOps, Symfony4, Hoa

Eléphanteau du PHP | 23 Messages

07 mai 2007, 18:05

ca s'éclaircit tout doucement dans mon esprit. J'attenderai la suite mais je te remercie d'avance pour ton aide

Mammouth du PHP | 991 Messages

07 mai 2007, 18:36

tu peux deja commencer a coder parce que ici on ne livre pas de code tout pret
DevOps, Symfony4, Hoa

Mammouth du PHP | 991 Messages

08 mai 2007, 09:47

Salut a toi,
Alors pour lister les ids dans un tableau utilise un array vide dans le quel tu met une nouvelle ligne contenant ,
l'id suivant dans la table. Ainsi meme si tu as des "trou" dans les ids de ta table , l'array permet d'obtenir par exemple :
$id[1] // affiche 2
$id[2] // affiche 8
etc ...
// listage des Ids
$id = array();
$reponse = mysql_query('SELECT truc FROM ma_table');
				while ($donnees = mysql_fetch_array($reponse))
					{
					$id[] = $donnees['id'];
					}
	
Maintenant nous avous un tableau contenant tous les ids
On va tester toutes les lignes afin de determiner la bonne, l'id qui est afficher actuellement
Pour cela On va faire un boucle for qui va parcourir tous les ligne de l'id a la recherche de l'id actuelle
Et on la sort dans une nouvelle variable
// retrouver la ligne
<?
$id_table_actuel = ''; // l'id de la table afficher
	for ($i=0;$i<count($id);$i+)
	{
		if ($id_table_actuel == $id)
			{
			$id_table_actuel_dans_tableau = $id[$i];
			}
	}?>
	
Maintenant que l'on a l'id de la table dans le listing des id on a juste a ajouter ou enlever 1 pour monter ou descendre d'un ligne
// determination des id pour bouton	
$bouton_suivant = "<a href='...'>?suivante=".$id[$id_table_actuel_dans_tableau + 1]."</a>";
$bouton_precedent = "<a href='...'>?precedent=".$id[$id_table_actuel_dans_tableau - 1]."</a>";
					?>
					

Voila j'ai coder ceci sans tester , et j'ai mi volontairement des erreurs afin que tu regarde en profondeur le code
Ce code est " pour expliquer" tu dois l'adapter a ta situation et a tes attentes.

@+ thehawk
DevOps, Symfony4, Hoa