Identification <session_start()>

LiLou LiLa Messages postés 330 Statut Membre -  
LiLou LiLa Messages postés 330 Statut Membre -
Bonjour à tous,
toujours dans mon petit projet, je dois rajouter maintenant une page pour l'identification et utiliser des <session_start()>
je decouvre un peu donc si vous pouvez un peu m expliquer le principe et m aider niveau code ça m'aiderai beaucoup :)
lors de l'identification, le nom et mot de passe doit s'enregistré (dans une sessiona ce que jai compris)
et utilisé dans la page connexion.php qui contient la partie connexion au serveur et a la base de données

merci d'avance
Configuration: Linux
Firefox 2.0.0.11

17 réponses

  1. guilom076 Messages postés 52 Statut Membre 2
     
    Bonjour,

    Regarde https://phpsources.net/tutoriel-sessions.htm c'est relativement complet sur les sessions et plutot bien expliqué..

    Si tu as encore un souci, hésite pas.
    0
    1. LiLou LiLa Messages postés 330 Statut Membre 12
       
      on est obligé de creer une table pour enregistrer le nom et mot de passe et pour verifier ?
      c'est pas possible de le faire par rapport a une autre page reservé a la connexion?
      0
  2. JR des cavernes Messages postés 166 Statut Membre 84
     
    En utilisant <?php session_start(); ?> au début de chacune de tes pages, tu rends accessible la variable globale $_SESSION
    C'est à dire que tu pourra utiliser $_SESSION['cequetuveux'] dans toutes les pages où il y a session_start(); et que la variable aura toujours la même valeur.
    Plus clairement, si tu mets dans ta première page $_SESSION['nom'] = "LiLou LiLa", $_SESSION['nom'] aura comme valeur "LiLou LiLa" dans toutes les pages où il y a session_start();
    0
    1. LiLou LiLa Messages postés 330 Statut Membre 12
       
      en fait je dois faire une page
      pour prendre les valeurs du gars quand il s'identifie
      et les mettre dans la connexion
      pour voir si c'est pareil?
      si c'est bon il passe sinon non et pour ça jutilise
      $_SESSION[nom]
      et
      $_SESSION[motdepasse]
      ?

      ma page connexion est une page a apart des autres codes, je fais un
      include "connexion.php
      "

      la session et donc la verification c'ets avec la page connexion?
      c'est dans une page a part et je dois l'appeler aussi

      et après avec mon code mettre des If $_session[nom]=?
      0
  3. JR des cavernes Messages postés 166 Statut Membre 84
     
    Lorsque tu fais un include, le code dans le fichier inclus est directement placé dans la page il me semble, donc tu mets le <?php session_start(); ?> seulement au début de ta page qui contient le include.

    Et il faut que tu mettes des cotes : $_SESSION['motdepasse'] et pas $_SESSION[motdepasse]
    0
  4. LiLou LiLa Messages postés 330 Statut Membre 12
     
    hum d accord
    pour l instant j ai juste fait ma page d'identification pour qu il rentre le nom et mot de passe

    est ce qu on peut "bloquer" le nom? enfin je veux dire faire en sorte que quand on clique sur la zone de texte il est pas les noms qu on a eu rentré qui s'affiche

    ma page : identification.php

    <? SESSION_START() ?>
    
    <h1>Identification </h1>
    <p>Vous devez vous identifier pour acceder au site<br>
    &#8203;Saisissez le nom et le mot de passe</p>
    
    <form action="login.php" method="post">
    <table align="center" border=0>
    	<tr>
    		<td> Nom : </td>
    		<td><input type="text" name="nom"></td>
    	</tr>
    	<tr>
    		<td> Mot de passe : </td>
    		<td><input type="password" name="motdepasse"></td>
    	</tr>
    	<tr>
    		<td></td>
    		<td><input type="submit" value="ok"></td>
    	</tr>
    </table>
    </form>


    il sert le SESSION_START() ici?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. JR des cavernes Messages postés 166 Statut Membre 84
     
    Il me semble qu'on ne peut pas bloquer le nom, comme tu dis, car cela est lié au navigateur.

    Le SESSION_START() ne sert pas ici. De plus écris le en minuscule avec un point virgule après
    0
  7. LiLou LiLa Messages postés 330 Statut Membre 12
     
    ok c'est rectifier :)

    et donc le bouton va sur une autre page
    de là je recupere les valeurs saisies :
    $nom=$_POST['nom'];
    $motdepasse=$_POST['motdepasse'];

    (c'est bien ça ? )
    et maintenant ? je peux les comparer avec les valeurs que j ai dans la page connexion ?
    connexion.php :
    <?php
    require_once('DB.php');
    $dbType="mysql";
    $host="*****";
    $account="******";
    $pass="********";
    $dbName="cartouche";
    $dsn="$dbType://$account:$pass@$host/$dbName";
    $db = DB::connect($dsn);
    
    if (DB::isError($db))
    {echo"ERREUR :".$db->getMessage();}
    ?>
    0
  8. LiLou LiLa Messages postés 330 Statut Membre 12
     
    j ai fait :
    <? session_start() ?>
    
    <? //variable de connexion
    require_once('DB.php');
    $dbType="mysql";
    $host="******";
    $account="********";
    $pass="********";
    $dbName="cartouche";
    $dsn="$dbType://$account:$pass@$host/$dbName";
    //recupere les nom & mot de passe saisis
    
    $nom=$_POST['nom'];
    $motdepasse=$_POST['motdepasse'];
    
    if(($nom==$account)&&($motdepasse==$pass)
    {
    	$db = DB::connect($dsn);
    	if (DB::isError($db))
    		{
    			echo"ERREUR :".$db->getMessage();
    		}
    }
    else{
    	echo "Erreur sur le nom ou le mot de passe : vous n'avez pas acces au site";
    	echo "<a href=\"identification.php\">Identifiez vous</a>";
    }
    ?>


    mais ça marche pas jai "GetMessage........ jusqu à la fin"

    les sessions faut les utiliser dedans?
    0
  9. JR des cavernes Messages postés 166 Statut Membre 84
     
    Il me semble qu'il manque une parenthèse : if(($nom==$account)&&($motdepasse==$pass))
    0
  10. LiLou LiLa Messages postés 330 Statut Membre 12
     
    en effet
    mais c etait pas ça j ai toujours le meme message :
    getMessage(); } ?>*/?> getMessage(); } } else{ echo "Erreur sur le nom ou le mot de passe : vous n'avez pas acces au site"; echo "Identifiez vous"; } ?>

    mais j utilise pas de session là c'est normal?
    0
  11. JR des cavernes Messages postés 166 Statut Membre 84
     
    Mets un espace ici pour voir echo espace "ERREUR :".$db->getMessage();
    0
  12. LiLou LiLa Messages postés 330 Statut Membre 12
     
    ça change rien
    ERREUR ne s affiche pas donc c'est a partir de $db-> mais y a pas vraiment de raison ..
    et pour les sessions?
    et je dois mettre quoi sur les autres page s?
    0
  13. JR des cavernes Messages postés 166 Statut Membre 84
     
    Moi je ne vois pas pourquoi tu aurais besoin des sessions pour l'instant...

    Ton fichier DB.php contient quoi ? L'erreur vient peut-être de là...
    0
  14. LiLou LiLa Messages postés 330 Statut Membre 12
     
    heu jen sais rien
    mais avant aujourdh'ui (c'est a dire utiliser pear sans session) tout marché
    et ma page connexion.php etait
    <?require_once('DB.php');
    $dbType="mysql";
    $host="172.17.50.102";
    $account="root";
    $pass="";
    $dbName="cartouche";
    $dsn="$dbType://$account:$pass@$host/$dbName";
    
    $db = DB::connect($dsn);
    
    if (DB::isError($db))
    {
    	echo"ERREUR :".$db->getMessage();
    }
    ?>


    et est lié aux autres pages avec un include"connexion.php"

    tout marcher :)

    mais là .. et vu que je sais pas utiliser les sessions..
    0
  15. JR des cavernes Messages postés 166 Statut Membre 84
     
    Je en comprends pas bien : si tout marche quand tu n'utilise pas de session,
    pourquoi utiliser une session. Ensuite, les sessions ne sont pas compliquées à utiliser :

    - Tu mets session_start(); au début de chacune de tes pages, avant tout autre chose.
    - A partir de là tu peux créer des variables $_SESSION['cequetuveux'] qui seront
    accessibles et modifiables sur toutes tes pages.

    Si tu veux faire une page d'identification tu procède ainsi :

    - Tu demande un nom et un mot de passe.
    - Tu vérifie si le couple nom/mot de passe est bien dans la base de données.
    - Si c'est le cas tu récupères et enregistres les informations concernant l'utilisateur (son nom par exemple)
    dans une variable de session. Tu pourras ainsi afficher les infos de l'utilisateur
    facilement sur toutes tes pages.
    0
  16. LiLou LiLa Messages postés 330 Statut Membre 12
     
    je suis en stage c'est pour me faire apprendre a utiliser les sessions
    d'abord mon site etait qu en php,puis j'ai du le changer en pear, et là je dois rajouter session

    il vient de passer et je lui ai tout demandé :
    en fait, c'est juste "pour le fun" son histoire de session, il veut :

    une page identification ou le mot de passe saisi et le nom sont enregistrés dans une session

    et faire appel a cette session plusieurs pages plus loin pour recuperer et afficher le mot de passe et nom que l'utilisateur avait saisi

    faut que je l'enregistre en fait et le resorte plus loin (utilité des sessions! )
    0
  17. JR des cavernes Messages postés 166 Statut Membre 84
     
    OKKKKKKKKKKKKKKKKKKKKK !!!

    Ben ça c'est pas trop compliqué. Tu gardes ta première page :

    <h1>Identification </h1>
    <p>Vous devez vous identifier pour acceder au site<br>
    ​Saisissez le nom et le mot de passe</p>

    <form action="login.php" method="post">
    <table align="center" border=0>
    <tr>
    <td> Nom : </td>
    <td><input type="text" name="nom"></td>
    </tr>
    <tr>
    <td> Mot de passe : </td>
    <td><input type="password" name="motdepasse"></td>
    </tr>
    <tr>
    <td></td>
    <td><input type="submit" value="ok"></td>
    </tr>
    </table>
    </form>

    Puis sur la page login.php :
    <?php session_start(); ?> tout en haut

    $_SESSION['nom']=$_POST['nom'];
    $_SESSION['motdepasse']=$_POST['motdepasse'];

    et voilà.

    A partir de là toutes tes pages avec <?php session_start(); ?> tout en haut peuvent voir le nom est le
    mot de passe en faisant par exemple :
    echo "Nom : ".$_SESSION['nom']." || Mot de passe : ".$_SESSION['motdepasse']."";
    0
    1. LiLou LiLa Messages postés 330 Statut Membre 12
       
      merci
      et comment tu fais pour passer de identification.php, a login.php et a accueil.php
      sans que login.php saffiche?
      0
  18. LiLou LiLa Messages postés 330 Statut Membre 12
     
    merci :)
    il me faut faire une page de redirection maintenant et ça devrait etre bon
    0