Php:aider moi(valider pseudo et mot de passe avec formulaire)

Résolu
cs_info3licen Messages postés 17 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 26 avril 2009 - 18 avril 2009 à 12:59
cs_info3licen Messages postés 17 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 26 avril 2009 - 19 avril 2009 à 18:02
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

Arto_8000 Messages postés 1044 Date d'inscription lundi 7 mars 2005 Statut Membre Dernière intervention 13 juillet 2010 7
18 avril 2009 à 22:07
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();
    }
}
3
Arto_8000 Messages postés 1044 Date d'inscription lundi 7 mars 2005 Statut Membre Dernière intervention 13 juillet 2010 7
18 avril 2009 à 17:20
$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.
0
cs_info3licen Messages postés 17 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 26 avril 2009
18 avril 2009 à 17:31
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 
0
cs_info3licen Messages postés 17 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 26 avril 2009
19 avril 2009 à 18:02
merci beaucoup ARTO;
oui c tout a fai sa
et sa marche tré bien aussi
je te remercie c vraiment genti de ta part
++
0
Rejoignez-nous