Sessions PHP Conservation des variables
wagner51
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
wagner51 Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
wagner51 Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
Bonjour, j'ai écrit des fichiers PHP. Pour gérer les sessions, ils commencent tous par <? session_start(); ?>
L'ID de session est bien la même pour chaque page, mais j'ai un problème pour conserver les variables, je m'explique.
Sur le FICHIER01, j'ai fais un formulaire qui soumet plusieurs variables au FICHIER02, par exemple :
<FORM method="post" action="./FICHIER02.php" name="PostName">
<INPUT type="text" name="variable1" size="20">
<INPUT type="submit" value="Valider">
</FORM>
Le FICHIER02.php enregistre alors les variables, par exemple :
<?
session_start();
session_register("variable1");
?>
J'y ai bien accès en affichant $variable1.
Mais j'ai créer un bouton pour corriger le formulaire en revenant à FICHIER01.php. Et là, les variables enregistrées ne le sont plus !!! Je voulais à la base afficher les variables déjà entrées à l'intérieur même du formulaire pour que l'utilisateur n'ait pas à tout retaper, juste à corriger les valeurs fausses. Exemple :
<?
echo"<INPUT type=\"text\" name=\"variable1\" size=\"10\" value=\"$variable1\">";
?>
Qu'est-ce qui cloche ? Merci pour votre aide...
PS : bien entendu, le formulaire dans FICHIER01 était écrit en PHP et non en HTML :
<?
echo"<INPUT type=\"text\" name=\"variable1\" size=\"10\" value=\"$variable1\">";
?>
Comme ça, si $variable1 n'a jamais été entrée par l'utilisateur, le code source résultant en HTML donne bien <INPUT type="text" name="variable1" size="10" value="">
L'ID de session est bien la même pour chaque page, mais j'ai un problème pour conserver les variables, je m'explique.
Sur le FICHIER01, j'ai fais un formulaire qui soumet plusieurs variables au FICHIER02, par exemple :
<FORM method="post" action="./FICHIER02.php" name="PostName">
<INPUT type="text" name="variable1" size="20">
<INPUT type="submit" value="Valider">
</FORM>
Le FICHIER02.php enregistre alors les variables, par exemple :
<?
session_start();
session_register("variable1");
?>
J'y ai bien accès en affichant $variable1.
Mais j'ai créer un bouton pour corriger le formulaire en revenant à FICHIER01.php. Et là, les variables enregistrées ne le sont plus !!! Je voulais à la base afficher les variables déjà entrées à l'intérieur même du formulaire pour que l'utilisateur n'ait pas à tout retaper, juste à corriger les valeurs fausses. Exemple :
<?
echo"<INPUT type=\"text\" name=\"variable1\" size=\"10\" value=\"$variable1\">";
?>
Qu'est-ce qui cloche ? Merci pour votre aide...
PS : bien entendu, le formulaire dans FICHIER01 était écrit en PHP et non en HTML :
<?
echo"<INPUT type=\"text\" name=\"variable1\" size=\"10\" value=\"$variable1\">";
?>
Comme ça, si $variable1 n'a jamais été entrée par l'utilisateur, le code source résultant en HTML donne bien <INPUT type="text" name="variable1" size="10" value="">
A voir également:
- Sessions PHP Conservation des variables
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Conservation des aliments - Guide
- Alert php - Forum PHP
1 réponse
Je n'ai pas une grande expérience des sessions PHP, mais j'ai bien l'impression que tu écrases les anciennes valeurs par des valeurs nulles.
session_register("variable1") affecte la valeur de $variable1 à la session. Si cette valeur est nulle, elle affecte null et tu perds les données.
Un petit :
if (isSet($variable1)) { session_register("variable1"); }
me parait le bienvenu :-)
-= Bobinours - http://bobin.underlands.org =-
session_register("variable1") affecte la valeur de $variable1 à la session. Si cette valeur est nulle, elle affecte null et tu perds les données.
Un petit :
if (isSet($variable1)) { session_register("variable1"); }
me parait le bienvenu :-)
-= Bobinours - http://bobin.underlands.org =-
wagner51
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
Les variables postées par le formulaire vers FICHIER02.php sont bien enregistrées. En effet, dans FICHIER02.php, si je fais echo"$variable1", la valeur est affichée, donc session_register() a bien fonctionné. Le problème apparaît quand je fais à ce moment un retour vers FICHIER01.php pour corriger les valeurs. Il n'y a aucune fonction session_register() dans FICHIER01.php, et pourtant les variables sont effacées... Pour revenir à FICHIER01.php, je met juste une balise <FORM type="button" value="Retour" onClick="location='./FICHIER01.php' ">