Page 1 sur 1

zone login et password problème

Posté : 03 sept. 2007, 17:50
par thewind1
Bonjour,

Je ne comprends pas pourquoi même si je mets un login au hasard et n'importe quoi comme password, je passe quand même dans ma zone admin, quelqu'un peut-il m'éclairer ?

Voici mon code :
<?php
//commencement de la session
session_start();

//Réception des informations envoyées par le formulaire d'identification 
if(isset($_POST['login']) AND isset($_POST['motpasse'])) 
{     
     $login = $_POST['login'];
     $pass = md5($_POST['motpasse']);//cryptage du mot de passe 
     
     
     //TEST si le mot de passe est valide 
     //1) connexion à Mysql 
     include 'connexionbdd';  
         
      //2)Requète sql pour ressortir tout sur le compte utilisateur  
     $sql = "SELECT * FROM compte_utilisateur";
     //Exécution de la requète sql
     $requete = mysql_query($sql);
     //3)Récupération du résultat de la requète et triage des informations 
     $resultat = mysql_fetch_array($requete);
     
     //4)Vérification et compraraison du login et password avec les informations resultat     
     if ($resultat['login'] == $login AND $resultat['motpasse'] == $pass)
     { 
        
        session_regenerate_id();//Là l'utilisateur est identifié, on change l'identifiant de session par sécurité 
        //On enregistre le login dans le tableau $_SESSION[] 
        $_SESSION['login'] = $login;
        //On envoie un message à l'utilisateur 
        $message = 'Vous êtes correctement identifié';
         
     }
     else
     {
         $message = 'Echec de la connexion !';//Message envoyer à l'utlisateur 
         $message.= '<a href="http:/../index.php">retour à la zone accueil</a>';
     }
        
}
else
{
 $message = 'Le champs login et mot de passe est vie !<br/>';
 $message.= '<a href="http://../index.php">retour à la zone accueil</a>'; 
} 
?>


<p><?php echo $message;?></p><!--Affichage du message à l'utilisateur-->

<form method="post" action="espace_securise.php"><!--<?php echo $_SERVER["PHP_SELF"] ?>-->
<fieldset><legend>Zone d'identification</legend><br/><br/>
<label for="login"></label>
login : <br/><input type="text" name="login" size="12" 
value="<?php echo(!empty($_POST['login'])) ?$_POST['login']:'';?>"><br/><!--TERNAIRE-->
<label for="motpasse"></label>
mot de passe : <br/><input type="password" name="motpasse" ide="motpasse" size="12" 
value="<?php echo(!empty($_POST['motpasse'])) ?$_POST['motpasse']:'';?>"><br/><br/>
<input type="submit" value="ENTREZ"> 
<input type="reset" value="EFFACER">
</fieldset>
</form>

<p>Pour revenir à la page d'accueil, cliquez <a href="http://l../index.php">ici</a></p>
:shock: :shock: :shock:

Posté : 03 sept. 2007, 17:54
par cf357
hello !

le premier gros problème que je vois se trouve là :
 //2)Requète sql pour ressortir tout sur le compte utilisateur
$sql = "SELECT * FROM compte_utilisateur";
//Exécution de la requète sql
$requete = mysql_query($sql); 
Tu sélectionnes les champs de la table "compte_utilisateur" sans filtrer le pseudo et le mot de passe.

La requete serait donc :
$sql = "SELECT *
           FROM compte_utilisateur
           WHERE pseudo = ".$login ." AND password = ".$pass;

Pour des raisons de sécurité :
$login = mysql_real_escape_string($login);
$pass = mysql_real_escape_string($pass);

Posté : 03 sept. 2007, 17:55
par Gaap

Code : Tout sélectionner

$sql = "SELECT * FROM compte_utilisateur";
il ne te manquerait pas

Code : Tout sélectionner

WHERE login='$login' AND password ='$password'
? parce que la tu récupères toute la table !


erf encore grillé c'est pas mon jour de chance :cry: :arrow:

Posté : 03 sept. 2007, 19:45
par thewind1
Hello,

Merci cf357 et Gaap.

C'est vrai j'avais oublié ce détail.

Concernant le filtrage de login et password, je venais de supprimer volontairement, je ne sais plus pourquoi... mais bon, merci.

------------------------------------------------------------------------------

Je viens de corriger mais ça n'a pas résolu mon problème de mot de passe !!!!!

@+

Posté : 06 sept. 2007, 20:34
par thewind1
Bonsoir,

J'ai cherché sur internet mais je n'arrive pas à comprendre pourquoi je passe dans ma zone admin sans mettre mon login et password ou autre login et autre password.

quelqu'n pourrait-il m'aider svp ?

Posté : 08 sept. 2007, 19:56
par Invité
Je suis revenu dessus à l'instant pour voir ça avec du recul.

C'est bon j'ai pu trouver mes erreurs.

Il s'agissait de mettre des apostrophes entre login, motpasse et j'avais oublié .php dans mon include. Mais vraiment ... :?

[resolu]

Posté : 08 sept. 2007, 19:57
par Invité
problème résolu