Page 1 sur 1

Mettre en session la variable sélectionnée

Posté : 22 janv. 2007, 00:08
par rolli
Bonsoir,
A partir d'une liste de variables d'un tableau (chaque variable est balisé par un a href), j'aimerais mettre en session la variable sélectionnée.
Est-ce possible ?

Posté : 22 janv. 2007, 00:11
par zeus
euh ... surement 8-|

Honnetement, avec si peu d'élements, je ne peux pas t'en dire plus :(

Tu parles d'un tableau HTML ou d'un tableau PHP ?
La mémorisation doit se faire au clic sur un lien ou à un autre moment ?

Je pense qu'avec ces éléments, il nous sera plus facile de te répondre ;)

Posté : 22 janv. 2007, 00:26
par Invité
Merci d'avoir répondu si vite.
Je vais essayer de préciser ma demande avec un bout de code.

Code : Tout sélectionner

<? echo '<table>'; while($val = mysql_fetch_array ($resultatRequete )){ $idCycliste = $val['Id_Cycliste']; $nom = $val['Nom_Cycliste']; $prenom = $val['Prenom_Cycliste']; echo "<tr> <td> <ahref='FicheCycliste.php?CyclisteSelectionne=$idCycliste'> $nom $prenom</a> </td> </tr>"; } echo '</table>'; ?>
Actuellement, je passe ma $ par l' url, mais j'aimerais le faire en session.

J'espère que c'est plus clair.

Merci

Posté : 22 janv. 2007, 09:07
par zeus
Salut,

Le problème, c'est qu'au moment où le PHP s'execute, on ne sait pas sur quel lien le visiteur va cliqué :-k

Soit on met tout le tableau en session, soit rien mais on ne peut pas enregistrer une variable en session au clic sur un lien.

Désolé

Posté : 22 janv. 2007, 14:16
par Invité
Merci de la réponse Zeus.

Dommage, j'espèrais qu'il existait une astuce...

Passer tout le tableau en session, va me rendre la tâche plus difficile. D'autant que le tableau est plus complexe que celui du code que j'ai mis en exemple.

Je pense m'orienter vers une autre solution.
je place le tableau dans un
<form method="post" action="<? $_SERVER['PHP_SELF']; ?>" name="envoiSelectCycliste">
A la place du lien, je mets un
<input type="image" src="Image/bt_select_cycliste.gif" border="0" alt="boutonSelect">
<input type="hidden" name="cyclisteSelect" value= <? echo $idCycliste;?> ?>>

Je récupère la valeur $idCyclisteSelect = $_POST['cyclisteSelect'];
Je crée la variable session: $_SESSION['idCyclisteSelect']= $idCyclisteSelect;

et je fais une redirection avec:
header ("Location: ficheCycliste.php");

Voilà l'idée, c'est un peu tordu, je le reconnais. Je teste et je vous informe du résultat.

Posté : 22 janv. 2007, 15:09
par zeus
Pourquoi la solution de passer la variable en GET ne te convient pas ?

Posté : 22 janv. 2007, 21:04
par Invité
A priori, j'aurais plusieurs variables à faire passer en GET, et je devrais le répéter sur plusieurs pages.
De plus, pour revenir à la page (via un bouton ou lien "Annuler" ou "Retour", il faudra que je passe à nouveau mes variables en GET.

D'où ma demande de mettre les variables en sessions.

Cela m'évite le côté répétitif et j'évite de mettre des variables dans l'url.
(même si ce ne sont pas des données sensibles).

Ce sont les raisons de ma démarche.

Merci, encore du temps consacré à me répondre.

Posté : 23 janv. 2007, 14:20
par Invité
Bonjour,

J'ai testé la solution en passant par un <form method="post">.
Pas de problème ça fonctionne nickel.

J'aimerais fermer ce post par un [Résolu], mais je ne sais pas comment faire.
Si une personne disponible peut me rendre ce service, je l'en remercie d'avance.

Bonne journée

Posté : 23 janv. 2007, 15:32
par Ryle
Modération : j'ajoute le tag [Résolu] :)
Pour réaliser cette opération toi-même il suffit de cliquer sur le bouton [Mettre Résolu] qui s'affiche en haut à gauche du sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)


(sinon je crois que ce que te suggérais zeus était d'envoyer les données en get dans tes liens, pour les récupérer côté php et les mettre en session à ce moment là.. mais en post ça marche aussi :))