IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Probleme avec les sessions PHP


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 256
    Points : 83
    Points
    83
    Par défaut Probleme avec les sessions PHP
    Bonjour,

    J'ai un petit probleme avec les sessions, j'espere que quelqu'un pourra m'aider.

    En fait j'ai deux pages :
    La premiere est composé simplement d'un bouton envoyer ainsi que de deux champs de texte pour y inscrire son nom et son prenom
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
     
    <title>Document sans titre</title>
    </head>
    <body>
    <form name="form1" method="post" action="test1.php">
    		Nom<input type="text" name="nom"><BR>
    		Prenom<input type="text" name="prenom"><BR>
    	  	<input type="submit" name="Submit" value="Envoyer">
    </form>
    </body>
    J'ai ensuite une seconde page qui permet de demarrer une session et d'enregistrer les deux valeurs des champs de texte précédent.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
     
    <? session_start(); 
    session_unset(); 
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Document sans titre</title>
     
    </head>
     
    <body>
    <form name="form1" method="post" action="test2.php">
    <?php 
    echo $nom;
    $_SESSION['nom'] = $nom;
    echo $prenom;
    $_SESSION['prenom'] = $prenom;
     ?>
    <p>
      <input type="button" name="button" value="Retour" onclick="history.go(-1)">
      <input name="Submit" type="submit" value="envoyer">
    </p>
    </form>
    </body>
    </html>
    Alors voici mon probleme :
    Je comence tous dabord par ecrire un nom et un prenom puis je valide.
    Ma seconde page (test1.php) internet s'ouvre.
    Je decide de faire un retour (je me retrouve donc sur test.php avec le nom et le prenom précedemment ecrit) et de modifier par exemple le prénom puis je valide.
    Test1.php s'ouvre mais elle ne parvient pas a récuperer les informations de la précédente que j'ai modifié...

    Je pense qu'il s'agit des sessions.

    C'est pourquoi je voulais faire une destruction de la session lorsque j'appuie sur le bouton retour (il faut donc que je fasse une destruction de la session et un retour avec history.go(-1) et je en sais pas tro comment effectuer ceci)

    Ou si vous avez une autre solution je vous remercie par avance !

    Johnson

  2. #2
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut
    Déjà, est-tu sur que ce que tu as écrit dans ton formulaire est passé a la page suivante ?
    Parce que :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    echo $nom;
    $_SESSION['nom'] = $nom;
    A aucun moment tu n'initialises "$nom".
    Il te faudrai un truc du genre :
    Histoire de récuperer tes valeurs.

    Ensuite, le "session_unset" ne me semble pas approprié a cet endroit, normalement, tu n'en a pas besoin.

    Et pour finir, le history.go(-1) recharge la page qu'il a en cache. Dans la mesure ou il ne "recalcule" pas necessairement la page, ton problème peut venir de la.
    Fait donc un simple lien vers ta première page plutot que d'utiliser history.

    --
    Rakken
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 256
    Points : 83
    Points
    83
    Par défaut
    Je pense avoir trouver mon erreur elle provient comme tu me l'as di du fait que je récuperé les valeurs directement en mettant un "$".
    Il faut utiliser la methode POST : $_POST['nom de la variable']

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 14
    Dernier message: 24/08/2006, 18h12
  2. Probleme avec les sessions
    Par phpaide dans le forum Langage
    Réponses: 6
    Dernier message: 22/05/2006, 18h37
  3. Probleme avec les sessions.
    Par kilanepa dans le forum Langage
    Réponses: 13
    Dernier message: 30/03/2006, 14h32
  4. [Cookies] Problème avec les sessions PHP !!!
    Par boukay dans le forum Langage
    Réponses: 4
    Dernier message: 14/02/2006, 17h32
  5. Probleme avec les sessions
    Par Manio 54 dans le forum Langage
    Réponses: 6
    Dernier message: 07/12/2005, 14h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo