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 :

[Sécurité] probleme de variable de session


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    288
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 288
    Points : 91
    Points
    91
    Par défaut [Sécurité] probleme de variable de session
    Bonjour tout le monde !
    en fait je concois un site wap et je voudrai que quant un utilisateur m'envoie un sms je puisse lui retourner un message contenant mon url,un login et un mot de passe pour qu'il puisse se connecter comment faire ? si vous pouvez m'aider .
    Mon second probleme est que j'ai 3 pages pour securiser mon site mais quand je me connecte il me renvoit toujour la page d'identification voici mes pages:

    connexion.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
    <html>
     <head>
      <title>Connexion au site</title>
     </head>
     <body>
      <form method="post" action="veriflogin1.php">
       <table border="0" width="400" align="center">
        <tr>
         <td width="200"><b>Login</b></td>
         <td width="200">
          <input type="text" name="login">
         </td>
        </tr>
        <tr>
         <td width="200"><b>Mot de passe<b></td>
         <td width="200">
          <input type="password" name="password">
         </td>
        </tr>
        <tr>
         <td colspan="2">
          <input type="submit" name="submit" value="login">
         </td>
        </tr> 
       </table>
      </form>
     </body>
    </html>

    veriflogin.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
    <?
    include("param_bdd.txt");
     
    $loginOK = false;
    // On n'effectue les traitement qu'Ã  la condition que
    // les informations aient été effectivement postées
    if ( isset($_POST) && (!empty($_POST['identifiant'])) && (!empty($_POST['password'])) ) 
    	{
    	extract($_POST);  // je vous renvoie à la doc de cette fonction
    	mysql_connect("$localhost,$root,$websms") or die("erreur de connexion au serveur $host");;
            mysql_select_db($wap) or die("pas pu selectionner la base");
    	$sql = "SELECT num_telephone, password  FROM comptes WHERE temps_connexion_auto='10mn'" ;
    	$req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql);
     
    	// On vérifie que l'utilisateur existe bien
    	if (mysql_num_rows($req) > 0) 
    		{
    		$data = mysql_fetch_assoc($req);
       		// On vérifie que son mot de passe est correct
    		if ($password == $data['password']) 
    			{
    			$loginOK = true;
    			}
    		}
    	}
     
    // Si le login a été validé on met les données en sessions
    if ($loginOK) 
    	{
     
      	$_SESSION['login'] = $data['login'];
    	//print("<h1>Administration du service Raktak</h1><br>Bienvenue ".$_SESSION['login']);
    	//print("<br><a href=first.php></a>");
     
    	header("location: first.php");
    	}
    else 
    	{
      	echo 'Erreur,veuillez retaper votre login et votre mot de passe!';
    	header("location: connexion.php?erreur=yes");
    	}
    ?>

    secur.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
     
    <?php 
    session_start() ; 
    // on vérifie si l'utilisateur est identifié 
    if ( !isset( $_SESSION['nom'] )) { 
     
      // la variable de session n’existe pas, 
      // donc l'utilisateur n'est pas authentifié 
      // On redirige sur la page permettant de s’authentifier 
      header('Location: connexion.php') ; 
      // on arrête l'exécution 
     /* else
    	{
    	$data=mysql_fetch_array($res);
    	$type_acces=$data['type_acces'];
    	}*/
    }
    else
    {
    header("location: ../connexion.php");
      exit() ; 
    }  
    ?>
    aider moi s'il vous plait :

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut


    Si tu veux que des personnes s'attardent sur ton problème, il serait bon de leur faciliter la tâche ! Peux tu editer ton message et mettre les balises [code] autour de ton code s'il te plait ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 66
    Points : 51
    Points
    51
    Par défaut
    Bin en fait je ne sais pas si tu l'as remarqué mais tu jongles entre le mot login et identifiant ! ce qui provoque le fait que ca ne marche pas :

    ->Dans connexion.php:
    <input type="text" name="login">
    ->Dans veriflogin.php :
    !empty($_POST['identifiant'])
    ->Dans secure.php
    isset( $_SESSION['nom'] )
    Et puis dans connexion.php dans le action du form tu mets veriflogin1.php alors que ton fichier s'appel veriflogin.php

    Voilà

    Bonne journée

    Zep3k!GnO 8)

  4. #4
    Fabouney
    Invité(e)
    Par défaut
    Bonjour,

    premiere chose qui m'a interpelé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ( isset($_POST) && (!empty($_POST['identifiant'])) && (!empty($_POST['password'])) )
    cette condition retourne false, je ne fois pas de champ ayant comme nom 'identifiant', donc evidement comme il faut avoir les 3 condition de vrai dans ton if pour effectuer le traitement, et bien il ne le fait pas, donc loginOK = false a la fin de ta vérification.

    revois le nom de tes champs ! y a des incorences !

  5. #5
    Membre régulier
    Inscrit en
    Juillet 2005
    Messages
    288
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 288
    Points : 91
    Points
    91
    Par défaut
    salut !
    J' ai corrigé mai il me retorne toujours les mémes erreures

Discussions similaires

  1. probleme de variable de session
    Par scheme dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 16/02/2011, 13h06
  2. [PHP 5.3] Probleme de variable de session et xmlhttprequest
    Par pierrot10 dans le forum Langage
    Réponses: 2
    Dernier message: 21/10/2010, 09h09
  3. [Sécurité] Problème de variables de session
    Par budylove dans le forum Langage
    Réponses: 16
    Dernier message: 25/04/2006, 11h26
  4. [Sécurité] Problème de variable de session
    Par funkyfox dans le forum Langage
    Réponses: 3
    Dernier message: 19/02/2006, 17h59
  5. Réponses: 2
    Dernier message: 04/01/2004, 15h14

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