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

PHP & Base de données Discussion :

Variable de session


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Par défaut Variable de session
    bonjour à tous , voilà mon probleme est de faire une interface web pour un reseau VPN , l'administrateur / client devra introduire tout d'abord son identifiant et son mot de pass ( authentification ) pour acceder a la page d'acceuil , le probleme qu'on veux cette authentification soit securisé c'est à dire avec les variables de session. je me suis planté dans cette phase , quelqu'un peu m'aider svp ? merçi en avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Quel est ton problème ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Par défaut
    mon probleme est la manipulation de ces variables de sessions , un exemple dans mon cas peu m'aider. désolé mais je ne sais meme pas comment les utiliser

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Quand tu as verifié le login / pass de ton utilisateur tu ajoutes une variable de session du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_SESSION['authentif'] = TRUE;
    Et dans les pages restreintes tu vérifies
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if ($_SESSION['authentif'] == FALSE) {
    // une redirection ou un message ce que tu veux
    die();
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Par défaut
    ok , je vais plus expliquer j'ai enregister deux user dans la base de donneé ( username / password ) voiçi le fichier home.php

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    <?php
     session_start(); 
     include("logins.php");
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
        <title>Admin</title>
        <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
        <link href="css/all.css" rel="stylesheet" type="text/css" />
     
    </head>
    <?php if($logged_in){ ?>
    <body onLoad="setTimeout('delayer()', 2000)">
     <?php } else echo '<body>'; ?>
     
    <div id="main">
      <div id="header">
        <div align="center"><a href="acceuil.php" class="logo"><img src="img/logo.gif" alt="" width="128" height="87" align="middle" /></a></div>
      </div>
        <div id="middle">
            <div id="left-column">
     
     
     
                </ul>
     
            </div>
          <div id="center-column">
              <div class="top-bar">
                <h1><center>Authentification</center> </h1>
                    <div class="breadcrumbs"><br /></div>
            </div><br /><br />
              <div class="select-bar">
     
     
     
     
    <center><h2></h2></center><br/>
     
        <?php  if($logged_in){
        echo 'Logged in as '.$_SESSION['username'].', redirecting...<br><a href="start.php" style="text-decoration:none"><font color="#00FFFF" >click here</a></font>';
            ?>
        if redirect failed
        <?php
     }else{
       echo 'Not logged in.';
     displayLogin(); 
     }
    ?>
     
     </div>
          </div>
     
        </div>
        <div id="footer"></div>
    </div>
     
    </body>
    </html>
    et voilà le fichier logins.php

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    <?php
     
     
    function confirmUser($username, $password){
    include ("cnct.php");
     $sel="select * from ".$users_tbl." where ".$user_field."='".$username."' and ".$pass_field."='".$password."'";
     $selres=mysql_query($sel) or die ("MySQL Error ".mysql_errno().": ".mysql_error()."<br>\nThe query was: ".$sel);
     $selinc = mysql_num_rows($selres) ;
            if ($selinc==1) 
                return 0;
                else
                return 1;
                break;
     
     
    }
     
     
    function checkLogin(){
     
       if(isset($_COOKIE['cookname']) && isset($_COOKIE['cookpass'])){
          $_SESSION['username'] = $_COOKIE['cookname'];
          $_SESSION['password'] = $_COOKIE['cookpass'];
       }
     
     
       if(isset($_SESSION['username']) && isset($_SESSION['password'])){
     
          if(confirmUser($_SESSION['username'], $_SESSION['password']) != 0){
     
             unset($_SESSION['username']);
             unset($_SESSION['password']);
             return false;
          }
          return true;
       }
     
       else{
          return false;
       }
    }
     
     
    function displayLogin(){
       global $logged_in;
       if($logged_in){
          echo "<h1 >authentifié!</h1>";
          echo "Welcome <b>$_SESSION[username]</b>, you are logged in. <a href=\"start.php\">Click</a> to continue .";
     
       }
       else{
    ?>
     
     
    <form action="" method="post">
    <table align="left" border="0" cellspacing="0" cellpadding="3">
    <tr><td><span class="style7">Login:</span></td><td><input type="text" name="user" maxlength="30"></td></tr>
    <tr><td><span class="style7">Password:</td><td><input type="password" name="pass" maxlength="30"></td></tr>
    <tr><td colspan="2" align="left">
    <font size="2"><span class="style7">se rappel de moi?<input type="checkbox" name="remember"></td></tr>
    <tr><td colspan="2" align="right"><input type="submit" name="sublogin" value="Login"></td></tr>
     
    </table>
    </form>
     
    <?php
       }
    }
     
     
     
    if(isset($_POST['sublogin'])){
     
       if(!$_POST['user'] || !$_POST['pass']){
          die('Tu n`as rien mis.');
       }
     
       $_POST['user'] = trim($_POST['user']);
       if(strlen($_POST['user']) > 30){
          die("desolé , votre nom d`utilisateur depasse 30 caracteres.");
       }
     
     
       $md5pass = md5($_POST['pass']);
       $result = confirmUser($_POST['user'], $md5pass);
     
     
     
        if($result == 1){
          die('Incorrect password, please try again.');
       }
     
     
       $_POST['user'] = stripslashes($_POST['user']);
       $_SESSION['username'] = $_POST['user'];
       $_SESSION['password'] = $md5pass;
     
     
       if(isset($_POST['remember'])){
          setcookie("cookname", $_SESSION['username'], time()+60*60*24*14, "/");
          setcookie("cookpass", $_SESSION['password'], time()+60*60*24*14, "/");
       }
     
     
       echo "<meta http-equiv=\"Refresh\" content=\"0;url=$HTTP_SERVER_VARS[PHP_SELF]\">";
       return;
    }
     
     
    $logged_in = checkLogin();
     
    ?>
    j'espere que ça va aider

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ma réponse reste la meme.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 11
    Par défaut
    desolé , j'ai cru que tu peux au moins modifier ce script puisque je suis null :/ mais bon merçi pour l'aide :=)

Discussions similaires

  1. [C#] Tester existence d'une variable de session
    Par IDNoires dans le forum ASP.NET
    Réponses: 2
    Dernier message: 31/12/2004, 12h30
  2. Création d'une variable de session avec un ID
    Par PrinceMaster77 dans le forum ASP
    Réponses: 4
    Dernier message: 18/10/2004, 10h28
  3. Effacer les variables de session
    Par glsn dans le forum ASP
    Réponses: 2
    Dernier message: 12/12/2003, 13h42
  4. Variable de session
    Par Sadneth dans le forum ASP
    Réponses: 6
    Dernier message: 14/11/2003, 11h12
  5. variable de session
    Par divableue dans le forum ASP
    Réponses: 2
    Dernier message: 23/10/2003, 16h04

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