Php:aider moi(valider pseudo et mot de passe avec formulaire) [Résolu]

Signaler
Messages postés
17
Date d'inscription
jeudi 16 avril 2009
Statut
Membre
Dernière intervention
26 avril 2009
-
Messages postés
17
Date d'inscription
jeudi 16 avril 2009
Statut
Membre
Dernière intervention
26 avril 2009
-
Bonjour,
je travaille avec php
j'ai besoin d'aide,je n'arrive pas a trouvé la solution: j'ai fai un formulaire avec pseudo et mot de passe les utilisateurs qui utilise le formulaire sont déjà inscrit dans la base de données(l'inscription est réglé) je n'arrive pas a trouvé le code qui valide le pseudo et le mot de passe.je vous montre ce que g fai :
<?php
   if (isset($_POST['pseudo']) AND isset($_POST['mot_de_passe']))
   {      $pseudo=$_POST['pseudo'];
       $mot_de_passe=$_POST['mot_de_passe'];
    
 }
    else
 { $pseudo="";
   $mot_de_passe="";
 } 
     
      echo"connexion a mysql";
        $db="projet";
        $connexion=mysql_connect("localhost", "root") or die("connexion impossible");
         echo "connexion réussie"; echo "\n\n";
          mysql_select_db($db,$connexion) or die("selection de la base de données impossible");
         echo "choix de la base réussie";   $sql "SELECT mot_de_passe, pseudo FROM identification WHERE pseudo $pseudo ";
      $req = mysql_query($sql,$connexion) or die("selection impossible : $sql".mysql_error())
   if ( $mot_de_passe == "mot_de_passe" )
   { ?> 




si vous avez une idée et vous pouvez m'aidez.aider moi j'attends votre réponse
merci

4 réponses

Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
6
Dans ta requête, il faudrait que tu sélectionnes aussi le champ qui correspond au type de l'utilisateur. Ensuite tu fais un switch sur le type d'utilisateur et tu fais un redirection tout dépendant du type.
$sql "SELECT mot_de_passe , typeUtilisateur FROM identification WHERE pseudo '" . mysql_real_escape_string($pseudo) + "'";
$req = mysql_query($sql,$connexion) or die("selection impossible : $sql".mysql_error())
$resultat = mysql_fetch_assoc($req);
if ( $resultat !FALSE && $resultat['mot_de_passe'] $mot_de_passe) {
    switch($resultat['typeUtilisateur ']) {
        case 'enseignant' :
            header('Location: enseignant.php');

            exit();
        case 'etudiant' :
            header('Location: etudiant.php');


            exit();
    }
}
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
6
$sql = "SELECT mot_de_passe FROM identification WHERE pseudo = '" . mysql_real_escape_string($pseudo) + "'" ;
$req = mysql_query($sql,$connexion) or die("selection impossible : $sql".mysql_error())
$resultat = mysql_fetch_assoc($req);
if ( $resultat !FALSE && $resultat['mot_de_passe'] $mot_de_passe)

Pour ta requête il est important d'encadrer tes variables avec des ', des " ou des ` à moins que ça soit des valeurs numériques. C'est aussi important de filtrer ta valeur que tu envoies à ta requête pour éviter une faille de type SQL Injection.

Pour pouvoir comparer ta valeur avec celle qui est envoyé il faut que tu ailles chercher les valeurs que la requête a retournées. Un des façon est avec la fonction mysql_fetch_assoc, mais il y a aussi mysql_fetch_row, mysql_fetch_array et mysql_fetch_object qui retourne les données d'une façon différente.
Messages postés
17
Date d'inscription
jeudi 16 avril 2009
Statut
Membre
Dernière intervention
26 avril 2009

merci beaucoup arto pour ton aide


mais mon probleme aussi,c'est comment afficher les page "etudiant.php" et "enseignant.php" (j'ai éxpliqué le probleme mais pas içi)


psk j'ai 2 type d'utilisateur 
Messages postés
17
Date d'inscription
jeudi 16 avril 2009
Statut
Membre
Dernière intervention
26 avril 2009

merci beaucoup ARTO;
oui c tout a fai sa
et sa marche tré bien aussi
je te remercie c vraiment genti de ta part
++