par
Aureusms » 11 janv. 2009, 12:28
Ce que veux dire orgerix est que tu confond variable de session et variable "postées".
Quand tu envoi un formulaire avec ton code
Code : Tout sélectionner
<form action='traitement1.php' method='POST'>
<input type='text' name='utilisateur'/>
<textarea name='commentaire' rows='10' cols='40'>
</textarea>
<input type='submit' value='valid' />
</form>
tu as une méthode stipulée : method="POST"
On dis alors que cette méthode est envoyée via POST et on récuperera les variables envoyées via un tableau associatif $_POST dans la page action='traitement1.php'.
Ainsi ton code
Code : Tout sélectionner
<html>
<body>
<?php
print "hello : ".$_SESSION['utilisateur']." ca va ?";
print "hello : ".$_SESSION['commentaire']." ca va ?";
?>
</body
</html>
deviendra
Code : Tout sélectionner
<html>
<body>
<?php
print "hello : ".$_POST['utilisateur']." ca va ?";
print "hello : ".$_POST['commentaire']." ca va ?";
?>
</body
</html>
Pour aller dans ce que tu recherches tu peux "stocker" les variables $_POST dans une variable de sessions. Les variables de sessions sont stockées sur le serveur dans une variables $_SESSION. Mais ceci qu'à conditions que tu mettes la fonction session_start() en haut de la page (en fait tu peux la mettre ailleurs mais en haut de la page cela permet de ne pas l'oublier).
Donc ton code pourrais se transformer en :
<?php
session_start();
//je teste si le formulaire a été posté
if (isset($_POST['utilisateur'])) $_SESSION["utilisateur"] = $_POST['utilisateur'];
if (isset($_POST['commentaire'])) $_SESSION['commentaire'] = $_POST['commentaire'];
?>
<html>
<body>
<?php
print "hello : ".$_SESSION['utilisateur']." ca va ?";
print "hello : ".$_SESSION['commentaire']." ca va ?";
?>
</body
</html>
Après tu peux récupérer, manipuler, effacer,... les deux variables de session ci-dessus dans d'autres pages si et seulement si session_start() est indiqué.
L'avantage des sessions : les valeurs enregistrées sont invisibles pour le visiteur.
L'inconvénient : les coockies doivent être activé pour transmettre l'identifiant de session (souvent source de questions). Si les coockies sont désactivés, il faut transmettre cet identifiant via l'url via la méthode GET (mais tu n'en ai pas encore là...)
Ce que veux dire orgerix est que tu confond variable de session et variable "postées".
Quand tu envoi un formulaire avec ton code
[code]<form action='traitement1.php' method='POST'>
<input type='text' name='utilisateur'/>
<textarea name='commentaire' rows='10' cols='40'>
</textarea>
<input type='submit' value='valid' />
</form> [/code]
tu as une méthode stipulée : method="POST"
On dis alors que cette méthode est envoyée via POST et on récuperera les variables envoyées via un tableau associatif $_POST dans la page action='traitement1.php'.
Ainsi ton code [code]<html>
<body>
<?php
print "hello : ".$_SESSION['utilisateur']." ca va ?";
print "hello : ".$_SESSION['commentaire']." ca va ?";
?>
</body
</html>[/code]
deviendra
[code]<html>
<body>
<?php
print "hello : ".$_POST['utilisateur']." ca va ?";
print "hello : ".$_POST['commentaire']." ca va ?";
?>
</body
</html>[/code]
Pour aller dans ce que tu recherches tu peux "stocker" les variables $_POST dans une variable de sessions. Les variables de sessions sont stockées sur le serveur dans une variables $_SESSION. Mais ceci qu'à conditions que tu mettes la fonction session_start() en haut de la page (en fait tu peux la mettre ailleurs mais en haut de la page cela permet de ne pas l'oublier).
Donc ton code pourrais se transformer en :
[php]<?php
session_start();
//je teste si le formulaire a été posté
if (isset($_POST['utilisateur'])) $_SESSION["utilisateur"] = $_POST['utilisateur'];
if (isset($_POST['commentaire'])) $_SESSION['commentaire'] = $_POST['commentaire'];
?>
<html>
<body>
<?php
print "hello : ".$_SESSION['utilisateur']." ca va ?";
print "hello : ".$_SESSION['commentaire']." ca va ?";
?>
</body
</html>[/php]
Après tu peux récupérer, manipuler, effacer,... les deux variables de session ci-dessus dans d'autres pages si et seulement si session_start() est indiqué.
L'avantage des sessions : les valeurs enregistrées sont invisibles pour le visiteur.
L'inconvénient : les coockies doivent être activé pour transmettre l'identifiant de session (souvent source de questions). Si les coockies sont désactivés, il faut transmettre cet identifiant via l'url via la méthode GET (mais tu n'en ai pas encore là...)