prob session

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : prob session

par Cyrano » 26 mai 2005, 08:39

c'est quoi l'interet des sessions à part que sa permet de garder la valeur d'une variable tout au long de la navigation ?

:?:
La réponse est contenue dans la question et c'est déjà un atout considérable dans la conception d'un site dynamique, je n'y vois sinon aucun intérêt supplémentaire ;)

C'est l'idée de base, on conserve des informations qui permettent de suivre un internaute dans sa navigation sur le site, éventuellement de lui faciliter la tâche, de lui présenter des formulaires partiellement complétés avec des informations qui lui sont propres, on gère des statistiques de navigation pour des besoins de marketing, on permet ou non des accès à certaines parties du site à ou des contenus particuliers par exemple pour des clients réguliers à qui on offre des promotions spéciales : bref, les possibilités offertes par ce simple fait de garder des informations sur toutes les pages d'un site ne sont limitées que par ton imagination.

par donny » 26 mai 2005, 08:24

c'est quoi l'interet des sessions à part que sa permet de garder la valeur d'une variable tout au long de la navigation ?

:?:

par Invité » 25 mai 2005, 14:04

Exact
Merci

par Cyrano » 25 mai 2005, 12:02

Tu as mal recopié mon code et tu as mis des parenthèses au lieu de crochets :
<?php
session_start();


$_SESSION['nom'] = $_POST['cNom'];
$_SESSION['prenom'] = $_POST['cPrenom'];
$_SESSION['email'] = $_POST['cEmail'];

header("Location: session.php?" . session_name() . "=". session_id());
?>

par donny » 25 mai 2005, 11:56

c est celui et c est pour cela que je pije pas
<?
  session_start();


  [color=red]  $_SESSION('nom') = $_POST['cNom']; [/color]
  $_SESSION('prenom') = $_POST['cPrenom'];
  $_SESSION('email') = $_POST['cEmail'];

  header("Location: session.php?" . session_name() . "=". session_id());
?>

par Cyrano » 25 mai 2005, 11:53

Parse error: parse error, unexpected '=' in c:\program files\easyphp1-7\www\projet\traitement.php on line 5
Fais voir les ligne 5 et précédentes du fichier en question.

Pour la méthode post, tu as raison si tes variables arrivent depuis un formulaire en méthode POST

par donny » 25 mai 2005, 11:50

J 'ai fait les modif

mais j 'ai cette erreur et je pije pas trop
Parse error: parse error, unexpected '=' in c:\program files\easyphp1-7\www\projet\traitement.php on line 5

et je voulais te demander sa ne serait pas comme sa plutot vu qu'on utilise la method post (j'ai essayer avec les 2 et j'ai la même erreur).??? :roll:

<?
  session_start();


  $_SESSION('nom') = $_POST['cNom']; 
  $_SESSION('prenom') = $_POST['cPrenom'];
  $_SESSION('email') = $_POST['cEmail'];

  header("Location: session.php?" . session_name() . "=". session_id());
?>

par Cyrano » 25 mai 2005, 11:35

Ok, alors on va faire deux corrections, tu vs je pense comprendre assez facilement:
<?
  session_start();
/* On récupère les valeurs et on initialise les variables de session */
  $_SESSION['nom'] = $cNom;
  $_SESSION['prenom'] = $cPrenom;
  $_SESSION['email'] = $cEmail;

  header("Location: session.php?" . session_name() . "=". session_id());
?>
<!-- Fichier : session.php -->
<?
  session_start();
?>
<html>
  <body>
    <?
     echo("<u>Identifiant de session :</u> <b>"
                              . session_id() . "</b><br>");
      echo("<u>Nom de la session :</u> <b>"
                              . session_name() . "</b><br><br>");
/* On récupère et on affiche les variables de session */
      echo("<u>Nom :</u> <b>". $_SESSION['nom'] . "</b><br>");
      echo("<u>Prénom :</u> <b>" . $_SESSION['prenom'] . "</b><br>");
      echo("<u>eMail :</u> <b>" . $_SESSION['email'] . "</b><br>");
    ?>
  </body>
</html> 

par donny » 25 mai 2005, 11:12

en faite voila tout le code
$_SESSION c est comme SESSION_REGISTER
<!-- Fichier : formulaire.html -->
<html>
  <body>
    <form method="post" action="traitement.php">
      <table border="0">
        <tr>
        <td><u>Nom :</u></td>
        <td>
          <input type="text" name="cNom" size="20" value="RIVES">
        </td>
        </tr>
        <tr>
        <td><u>Prénom :</u></td>
        <td>
          <input type="text" name="cPrenom" size="20" value="Jean-Pierre">
        </td>
        </tr>
        <tr>
        <td><u>eMail :</u></td>
        <td>
          <input type="text" name="cEmail" size="20" 
                     value="[email protected]">
        </td>
        </tr>
        <tr>
        <td> </td>
        <td>
         <input type="submit" name="soumettre" value="Envoyer">
        </td>
        </tr>
      </table>
    </form>
  </body>
</html>
<!-- Fichier : traitement.php -->
<?
  session_start();

  $nom = $cNom;
  $prenom = $cPrenom;
  $email = $cEmail;

  session_register("nom"); 
  session_register("prenom");
  session_register("email");

  header("Location: session.php?" . session_name() . "=". session_id());
?>
<!-- Fichier : session.php -->
<?
  session_start();
?>
 <html>
  <body>
    <?
     echo("<u>Identifiant de session :</u> <b>" 
                              . session_id() . "</b><br>");
      echo("<u>Nom de la session :</u> <b>" 
                              . session_name() . "</b><br><br>");
      echo("<u>Nom :</u> <b>". $nom . "</b><br>");
      echo("<u>Prénom :</u> <b>" . $prenom . "</b><br>");
      echo("<u>eMail :</u> <b>" . $email . "</b><br>");
    ?>
  </body>
</html>
<?
  session_destroy();
?>
 

par Cyrano » 25 mai 2005, 11:09

Ok, mais tes trois variables ne sont pas initialisées: est-ce qu'elles sont sensées être des variables de session dans ton esprit ? Auquel ça, il va falloir revoir le code.

Une variable de session se récupère par $_SESSION['nom_variable'] toujours à condition qu'elle soit initialisée, c'est à dite que tu lui as attribué une valeur.

par donny » 25 mai 2005, 11:05

voila
<?
  session_start();
?>
 <html>
  <body>
    <?
     echo("<u>Identifiant de session :</u> <b>" 
                              . session_id() . "</b><br>");
      echo("<u>Nom de la session :</u> <b>" 
                              . session_name() . "</b><br><br>");
      echo("<u>Nom :</u> <b>". $nom . "</b><br>");
      echo("<u>Prénom :</u> <b>" . $prenom . "</b><br>");
      echo("<u>eMail :</u> <b>" . $email . "</b><br>");
    ?>
  </body>
</html>
<?
  session_destroy();
?>

par Cyrano » 25 mai 2005, 10:58

Salut,
il faudrait qu'on voit ton code en particulier les lignes mentionnées dans les messages d'erreur.

Pour un tuto sur les sessions, tu à Ceci

prob session

par donny » 25 mai 2005, 10:46

salut,


Je viens de me lancer au session et j'ai recuperer un code sur le net et je l 'ai tester mais il fonctionne à moitié

http://www.laltruiste.com/document.php? ... iable.html

J'ai cette erreur
Identifiant de session : 392b9c83f7737067f8f05bfede5ee3e2
Nom de la session : PHPSESSID


Notice: Undefined variable: nom in c:\program files\easyphp1-7\www\projet\session.php on line 11
Nom :

Notice: Undefined variable: prenom in c:\program files\easyphp1-7\www\projet\session.php on line 12
Prénom :

Notice: Undefined variable: email in c:\program files\easyphp1-7\www\projet\session.php on line 13
eMail :
Merci
PS : si quelqu un a un bon tuto pour debuter avec les sessions je suis preneur