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 :

verification user et password


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Décembre 2008
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 133
    Points : 38
    Points
    38
    Par défaut verification user et password
    Salut à tous,
    J'ai une page d'identification d'un utilisateur (saise nom d'utilisateur et mot de passe) dans un formulaire. je sais pas comment verifier ce deux champs sachant que user et password se trouve dans une base de données.
    est ce que quelqu'un peut me donner une solution.
    merci

  2. #2
    Membre actif Avatar de fab76000
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    311
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 311
    Points : 294
    Points
    294
    Par défaut
    Bonsoir,
    Si tu récupères bien les variables du formulaire, pour la vérification, il te suffit de faire un 'select' (requête SQL) dans ta base de données et de regarder si le user saisi et le password existe dans ta base de données.
    Je ne sais si cela répond à ta question, dit nous en plus sinon..

  3. #3
    Nouveau membre du Club
    Inscrit en
    Décembre 2008
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 133
    Points : 38
    Points
    38
    Par défaut
    Salut,
    voila un exemple de code:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <html>
    <head>
    </head>
    <body>
    <form name="form1" method="post">
    <p> Nom d'utilisateur : <input type="text" name="util">
    <p>Mot de passe : <input type="password" name"pass">
    <p> <input type="submit" value="valider">
    </form >
    </body>
    </html>
    on fait je vais si l'utilisateur saisie un nom d'utilisateur ou mot de passe invalid il doit etre rederiger vers le meme page avec un message d'erreur qui apparait (nom d'utilisateur ou mot de passe invalide)
    si le nom d'utilisateur et le mot de passe sont valide il va etre dériger vers la page edit_form.php. dans cette page je veux recuperer les champs du formulaire (déja remplis) à partir de la base de donné.

  4. #4
    Membre actif Avatar de fab76000
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    311
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 311
    Points : 294
    Points
    294
    Par défaut
    Bonjour,

    Je vois ce que tu veux faire mais je ne sais malheureusement le faire qu'avec des jsp et pas avec du php, désolé.

    Si tu trouves une bonne solution tiens moi au courant stp.

  5. #5
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 477
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 477
    Points : 4 688
    Points
    4 688
    Par défaut
    salut,
    si tu ne dis pas ou doivent etre envoyer les infos te ton FORM, celles-ci n'iront pas loin :/
    <form name="form1" method="post" action="ta_page.php">
    ce que tu peux faire, c'est tout faire sur la meme page
    (tu devra par contre, ajouter un nom a ton bouton de submit)
    ce qui donnerai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    if(!empty($_POST["bt_valider"]))//si le bouton a ete clique
    {
    //tu test user/psw
     if(ton test est ok)
     {
       //redirection
       exit();
     }
     else
     {
      echo 'mauvais couple log/psw';
     }
    }
    //affichage de ton FORM
    voila pour les grandes lignes

  6. #6
    Nouveau membre du Club
    Inscrit en
    Décembre 2008
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 133
    Points : 38
    Points
    38
    Par défaut
    Salut,
    merci à tous et surtout à DEMMOTTE voici le script complet :
    <
    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
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    ?php
    include ("connexion.php"); //connexion à la base
    ?>
    <html>
     
    <head>
    <meta http-equiv="Content-Language" content="fr">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Soumettre résumé</title>
    <!-- Fonction écriture dans la barre d'état -->
    <SCRIPT>
     
    		var Texte="Remplir le formulaire d'inscription";
    		// mettre ici la longueur de chaîne affichée qui doit
    		// être plus longue que Texte
    		var Taille=100;
    		// mettre ici le délai en milliseconde entre deux
    		// affichages
    		var Delai = 100 ;
    		// position de départ
    		var Position=Taille;
    		// variables privées
    		var Longueur=Texte.length;
     
    		function deroule()
    		{
    			Position -- ;
    			// la chaîne va se déplacer vers la gauche.
    			var Tampon="";
    			// et donc la chaîne va grossir
    			var i ;
    			if (Position == 0) {
    				Position=Taille;
    			}
    			for ( i=0; i<Position; i++){
    				Tampon=Tampon + " ";
    			}
    			Tampon = Tampon + Texte.substring(0,Taille-i);
    			window.status = Tampon;
    			setTimeout("deroule()",Delai);
    		}		
    	</SCRIPT>
    </head>
    <body background="../images/bleu1.jpg">
    <?php
    if(empty($_POST["valider"])) //Si le bouton valider à été cliqué
    {	
    //Affichage du formulaire
    ?>
    <form name="verification" action="<? echo $_SERVER['PHP_SELF'];?>" method="POST">
      <table align ="center" width="50%" border="2" id="table_ident" cellspacing="1">
        <tr>
          <td width="44%"><u><b> <font color="#990033" face="Monotype Corsiva" size="4">Id article :</font></b></u></td>
          <td width="56%"><input type="text" name="id_article" maxlength="30" size="22">
    	</tr>
        <tr>
          <td width="44%"><p align="left"><font face="Monotype Corsiva"><b><font color="#990033" size="4"><u>Mot de Passe:</u> </font></b></font> </p></td>
          <td width="56%"><input type="password" name="motpasse_art" maxlength="30" size="22">
    	</tr>
     
        <tr>
    	<td width="44%"></td>
          <td width="56%" colspan="2" >
    		<input type="submit" value="Valider" name="valider"></td>
        </tr>
     
      </table>
    </form>
    <p><center><font color="red">Veuillez remplir le deux champs</font></center></P>	
    <?php
    }
    else
    {
    ?>
    <form name="verification" action="<? echo $_SERVER['PHP_SELF'];?>" method="POST">
      <table align ="center" width="50%" border="2" id="table_ident" cellspacing="1">
        <tr>
          <td width="44%"><u><b> <font color="#990033" face="Monotype Corsiva" size="4">Id article :</font></b></u></td>
          <td width="56%"><input type="text" name="id_article" maxlength="30" size="22">
    	</tr>
        <tr>
          <td width="44%"><p align="left"><font face="Monotype Corsiva"><b><font color="#990033" size="4"><u>Mot de Passe:</u> </font></b></font> </p></td>
          <td width="56%"><input type="password" name="motpasse_art" maxlength="30" size="22">
    	</tr>
     
        <tr>
    	<td width="44%"></td>
          <td width="56%" colspan="2" >
    		<input type="submit" value="Valider" name="valider"></td>
        </tr>
     
      </table>
    </form>
    <?php
    //Si les champs ne sont pas remplit
     
    	if(!isset($id_article) or !isset($motpasse_art))
    	{//Affichage du formulaire avec message
    	// Sélection de l'utilisateur concerné
                   $result = mysql_query("SELECT id_article, motpasse_art
                        FROM article
                        WHERE id_article = '" . $_POST["id_article"] . "'
                   ");
    // Si aucun utilisateur n'a été trouvé
                        if(mysql_num_rows($result) == 0)
                        {
                             echo("<p><center><font color=\"red\"> L'ID article " . $_POST["id_article"] . " n'existe pas</font></center></P>");
    					}
    					else
    					{// Récupération des données
                             $row = mysql_fetch_array($result);
    							// Vérification du  mot de passe
                                  if(($_POST["motpasse_art"]) == $row["motpasse_art"])
                                  {
                                        // Fermeture de la connexion à la base de données
    									mysql_close();
    									// Redirection de l'utilisateur
    									header("Location:editer_resume.php");
    									exit();
                                  }
    							  else
    							  {
    							  echo("<p><center><font color=\"red\">Mot de passe incorrect</font></center></P>");
    							  }
    					}
    	}
    }
    ?>	
     
    </body>
    </html>
    mais j'ai un problème avec la redirection quand le nom d'utilisateur et le mot de passe sont valide il m'affiche le message suivant :
    Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\gestconf\auteur\identification_aut.php:11) in c:\program files\easyphp1-8\www\gestconf\auteur\identification_aut.php on line 118
    est ce quelqu'un peut resoudre ce problème et est ce que je peux afficher les message d'erreur juste aprés les champs de saisie
    merci

  7. #7
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 477
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 477
    Points : 4 688
    Points
    4 688
    Par défaut
    salut,
    les balises [code] nous permetterait d'y voire plus claire (le # dans les option de texte)
    quelle est cette ligne 118 ?

  8. #8
    Nouveau membre du Club
    Inscrit en
    Décembre 2008
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 133
    Points : 38
    Points
    38
    Par défaut
    la ligne ou ily'a la redirection
    [header("Location:editer_resume.php");]

  9. #9
    Membre habitué Avatar de Couz02
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    232
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 232
    Points : 182
    Points
    182
    Par défaut
    Tu ne peux pas envoyer un si tu envoies déjà des informations d'en-tête.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <head>
        ...
    </head>

  10. #10
    Nouveau membre du Club
    Inscrit en
    Décembre 2008
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 133
    Points : 38
    Points
    38
    Par défaut
    Merci à tout le problème est résolu avec include au lieu de header

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 25/07/2009, 01h27
  2. User et password
    Par JP.NUAGE dans le forum Mandriva / Mageia
    Réponses: 5
    Dernier message: 05/10/2008, 15h34
  3. Sécuriser les users et password
    Par philippef dans le forum Sécurité
    Réponses: 0
    Dernier message: 26/08/2008, 18h07
  4. user et password
    Par judor31 dans le forum Débuter
    Réponses: 3
    Dernier message: 29/03/2006, 16h28
  5. [DBExpress] invalid user name/password sous XP
    Par Rudy 34 dans le forum Bases de données
    Réponses: 2
    Dernier message: 17/02/2005, 15h25

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