$_POST vers $_SESSION

Résolu
Eelan Messages postés 7 Date d'inscription samedi 29 novembre 2003 Statut Membre Dernière intervention 12 mai 2005 - 15 mars 2005 à 15:07
Eelan Messages postés 7 Date d'inscription samedi 29 novembre 2003 Statut Membre Dernière intervention 12 mai 2005 - 16 mars 2005 à 16:29
Bonjour,



J'aurais souhaité savoir s'il était possible de transformer de manière
automatique toutes les variables envoyées par un formulaire par la
méthode post en variable $_SESSION sans avoir par exemple à utiliser ce
code pour chaque info du formulaire.

if(isset($_POST['info_1'])){

$_SESSION['info_1'] = $_POST['info_1'];

}
if(isset($_POST['info_2'])){

$_SESSION['info_2'] = $_POST['info_2'];

}

etc etc etc...


Je sais qu'il existe la fonction extract qui peut transformer de
manière automatique chaque donnée d'un formulaire de cette manière
$_POST['info_1'] en $info_1, mais je ne sais pas s'il est possible de
faire la même chose pour les sesssions...



Merci à tout ceux qui pourrait me donner une idée ou même une réponse :)

5 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
15 mars 2005 à 16:26
Hello,



sans doute un truc du genre :



foreach ($_POST as $clef => $val)

$_SESSION[$clef] = $val;



faut voir :-)
3
Eelan Messages postés 7 Date d'inscription samedi 29 novembre 2003 Statut Membre Dernière intervention 12 mai 2005
15 mars 2005 à 16:59
Merci :o)



J'ai essayé avec ton idée et j'ai créé ça (qui se rapproche puisque
j'obtiens les variables de sessions, mais malheureusement pas avec les
bons nom... )



<?

session_start();

if(isset($_POST['Submit'])){

foreach($_POST as $cle => $vari) {

echo "Cle: {$cle}
";

echo "Vari: {$vari}
";

$_SESSION[$cle] = $vari;

}

echo "

Valeur de session que me donne mon script mal fichu:
";

echo "Valeur 1: {$_SESSION['textfield']}
";

echo "Valeur 2: {$_SESSION['textfield2']}
";

echo "Valeur 3: {$_SESSION['textfield3']}
";

echo "
Valeur que je cherche mais qui veulent pas marcher :o(
";

echo "Valeur 1: {$_SESSION['bidul']}
";

echo "Valeur 2: {$_SESSION['youplala']}
";

echo "Valeur 3: {$_SESSION['pouiki']}
";

} else {

?>

<form action="test.php" method="post" name="test">

Test de valeur 1:






Test de valeur 2:






Test de valeur 3:











</form>

<?

}

?>
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
15 mars 2005 à 17:30
Salut,



le script de malalam devrait fonctionner, tu peux nous donner les valeurs que tu obtiens avec et sans le script ?



a +

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
Eelan Messages postés 7 Date d'inscription samedi 29 novembre 2003 Statut Membre Dernière intervention 12 mai 2005
16 mars 2005 à 10:31
Bonjour,



En fait l'idée de malalam marche assez bien, le seul hic sont les valeur de la variable $cle de foreach($_POST as $cle => $vari)

ils ne prennent pas la valeur du nom de mon champs texte
(ici, youplala, bidul et pouiki) mais trois noms tels qu'ils sont par
défaut habituellement (textfield, textfield2, textfield3)

Du coup, au lieu d'obtenir $_SESSION['bidul'], $_SESSION['youplala'] et $_SESSION['pouiki'], j'obtiens $_SESSION['textfield'],
$_SESSION['textfield2'] et
$_SESSION['textfield3'].

J'avais arreté de chercher dans la soirée d'hier, je me repenche dessus
ce matin et je vous tiens au courant si je trouve moi même la solution
à mon probleme :o)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Eelan Messages postés 7 Date d'inscription samedi 29 novembre 2003 Statut Membre Dernière intervention 12 mai 2005
16 mars 2005 à 16:29
Le script marche très bien finalement.

J'ai du m'induire moi même en erreur et je vois pas ou, merci malalam...
0
Rejoignez-nous