[PHP] probleme session

Bonjour ou Bonsoir,

J'ai un petit problème avec les sessions. Le voici :
1 Ma premiere page contient un formulaire.
2 Lors de la validation de ce formulaire j'execute un script.
3 Dans ce script j'ouvre une session et je sauvegarde les variables du formulaire.
4 Dans ce script je creer un lien a l'aide d'un header.
5 Quand j'essaie d'afficher ma variable de ma session dans la derniere page je n'ai rien.

Savez-vous pourquoi ?

Merci.

Voici le script d'execution :

$log = $_POST['login'];
session_start();
session_register("log");
header('location:.....php');

Voici le code d'affichage :
session_start();
$id=123;
echo '<option value=$id>'.$log.'</option>

Merci

JSS

9 réponses

  1. Bonjour,
    J'avais également un soucis de nature identique et cette discussion m'a déjà permis d'avancer, merci beaucoup, mais il me reste un petit soucis.

    Je récupère, après une identification de même type, les valeurs de session en faisant:

    <?php
    session_start();
    $login=$_SESSION['log'];
    $droit=$_SESSION['droit'];
    ?>

    Ensuite j'utilise ces variables dans des "includes" et tout marche au première affichage

    Mon problème est que si je réactualise la page, je perd tout snif.

    Quelqu'un connait-il une solution?

    Je travail sous wamp avec php 5.

    Merci d'avance
    0
    1. meme pb pour moi aide moi
      0
  2. Contributeur
    Bonjour ou Bonsoir,

    YESSSSSSSSss !!!
    ca marche.

    MERCI BEAUCOUP !!!!

    JSS
    0
    1. phpinfo()

      Ca te donne tout sur la configuration (version et fonctions).

      Remplace le code de affiche.php par:
      <?php
      session_start();
      echo 'session : ' , $_SESSION['log'] , '<br /> ';
      ?>
      1
      1. Contributeur
        Bonjour ou Bonsoir,

        Mouarf ...j'ai un gros doute !!!
        Euh comment dire ... comment savoir quel version de php on a ?
        J'ai peur d'avoir la 3 ce qui expliquerai mon probleme.
        Mais le truc que je comprends pas c'est que dans ce cas il devrait il y avoir un probleme lors des appels de fonction non ?
        Ou alors c'est encore un autre probleme !

        JSS
        0
        1. Contributeur
          Oui mais le probleme c'est que ca marche pas!

          Pour la norme je croyais que c'etait une balise ouvrante pour une fermante et que de ce fait les balises <BR/> ne marchait pas mais qu'il faudrait plutot un truc du genre <br></br> qui n'existe pas (d'apres moi).

          C'est cool j'aurrai appris encore une chose :-)

          JSS
          0
          1. T'as tout compris ;-)
            Par contre, je te conseille de mettre <br /> pour respecter la norme XHTML, mais bon, c'est juste de l'optimisation :-p
            0
            1. Contributeur
              D'apres ce que j'ai cru comprendre j'ai fait ca :

              <?php
              session_start();
              $_SESSION['log'] = "tutu";
              header('location:affiche.php');
              ?>

              Voici le code d'affichage (affiche.php :
              <?php
              session_start();
              echo "session : $_SESSION['log']<BR> ";
              ?>

              Beh ca marche pas !

              Merci pour votre aide.

              JSS
              0
              1. Contributeur
                Bonjour ou Bonsoir,

                Merci je regarde ca tout de suite !!

                JSS
                0
                1. Tsss, le session_start() se fait avant tout le code, en tout début.

                  Ensuite, pour enregistrer une variable dans une sessions, préfère:
                  $_SESSION['log'] = $log;

                  Pour afficher la variable "log" contenue dans la session, c'est $_SESSION['log'] qu'il faut utiliser.
                  0