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

PHP & Base de données Discussion :

Page authentification [SQL-Server]


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Par défaut Page authentification
    Bonjour à tous,

    je viens de créer un formulaire pour la page d'identification avant l'accès a la base de données, le probleme c'est ma condition de comparaiso, entre les login et le password saisis et ceux enregistrer dans ma base ne fonctionnne pas !!

    alors je ne sais pas ou ça coince ???
    mon code estl e suivant :
    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
     
     
     
     
    <?php
    require ("fonctions.inc");
     
    session_start();
     
    $pseudo ="";
    $password ="";
    $message="";
     
    //tester le script comment est appelé
     
    if (!empty($_POST)) {
    //traitement du formulaire
     
    //Recuperation des valeurs saisies
    $pseudo=valeur_saisie ($_POST["pseudo"]);
    $password=valeur_saisie ($_POST["password"]);
    //controler les valeurs saisies
    	if ($pseudo=="") {
    	$message .="Veuillez saisir la référence de l'article.\n";
    	}
     
     
     
     
    $connexion = mssql_connect("monserveur","","");
     
    $sqldb=mssql_select_db("CONTROLE_RECEPTION",$connexion);
     
    $sql = mssql_query("SELECT pseudo, password FROM MEMBRES WHERE 
    
    pseudo='$pseudo'");
     
     
    while ($membre = mssql_fetch_array($sql))
    {
     
    	if (!empty($_POST['pseudo']) AND !empty($_POST['password']))
    	{
    		if($membre['password']== $password )
    		{
     
     
    		$_SESSION['pseudo'] = $membre['pseudo'];
     
    		$pseudo = htmlentities(addslashes($_SESSION['pseudo']));
    		echo '<a href="accueil.php">Accéder a la base</a>';
    		}
    		else
    		{
    	echo '<script langage="javascript">alert("Vos Identifiants sont 
    
    incorrects, veuillez réessayer"); 
    
    window.location.href="authentification.php";</script>';
    		}
    	}
     
    }
     
    ?>
     
    <HTML>
    <BODY>
     
    <form method="post">
     
    <B>Login :</B>
     
    <INPUT TYPE="text" Name="pseudo">
     
    <B>Password :</B>
    <INPUT TYPE="text" Name="password">
     
    <BR><BR>
    <INPUT TYPE="submit" NAME="OK" VALUE="CONNEXION">
     
     
    </center></table></form>
     
    </BODY>
    </HTML>
    Merci beaucoup de votre aide

  2. #2
    Membre éprouvé Avatar de LeXo
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 147
    Par défaut
    mssql_connect<< mysql_connect ? non ?

    regardes ce que tu envoies a la base de donnée
    en faisant un echo apres ton query
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo"SELECT pseudo, password FROM MEMBRES WHERE 
     
    pseudo='$pseudo'";
    en outre sur ton query tu peux afficher l'erreur en faisant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query($sql) or die("Erreur SQL : ". $sql ."<br>".mysql_error());

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Par défaut
    merci pour la réponse,

    le probelème n'est dans mssql car je travaille sur MS SQL server.

    si je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    foreach($membre as $test){
    print"".$test."<br/>"
    dans le while il m'affiche bien les pseudo et password de ma base mais lors de la comparaison
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($membre['password']== $password )
    ça marche pas ! il m'affiche direct le message d'erreur "veuillez réesser"

  4. #4
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Affiche le contenu des mots de passes avec var_dump() il y a surement une erreur (genre un espace, ou un accent mal codé)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var_dump($membre['password']);
    var_dump($password);

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Par défaut
    Merci pour la réponse,

    effectivement l'erreur vient de la taille de la variable une fois il m'affiche :
    string (10) et une autre string (4) ....mais je sais pas comment résoudre ça ??

  6. #6
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Bah je ne sais pas, le contenu est quand meme exactement le meme a l'affichage? parce que 6 caractères de différences ca me semble beaucoup meme pour une histoire d'accent.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Par défaut
    apparemment comme j'ai fixé la taille de la variable dans ma table à 10 même si le nombre de caractères de pseudo est de 4 à la comparaison via PHP il charge les 4 caracètres plus je pense des espaves blanc ! c bizzare je trouve !

    pour le moment la solution c'est que je suis obligé de fixer la taille di pseudo et password !

    voila merci si y a qlq un qui voit comment supprimer less espaces blancs ça sera mieux !

  8. #8
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Pour supprimer les espaces blancs il y a trim() mais je ne vois pas pourquoi ton formulaire rajouterai des espaces.

  9. #9
    Membre confirmé Avatar de dream_of_australia
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    167
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2007
    Messages : 167
    Par défaut
    Pourquoi ne pas essayer if (strcmp ($membre['password'], $password) == 0) au lieu de
    if($membre['password']== $password )

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 63
    Par défaut
    j'ai essayé le if (strcmp ($membre['password'], $password) == 0) ça n'a rien changé, pour je me contente de fixer la longueur de pseudo et password (qui sont des char) ça me suffit.

    merci beaucoup à tous

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

Discussions similaires

  1. Réalisation page authentification d'une application
    Par nabil123456 dans le forum NetBeans
    Réponses: 1
    Dernier message: 28/03/2015, 14h56
  2. PAGE AUTHENTIFICATION SOUS NETBEANS
    Par cheikhoufia dans le forum NetBeans
    Réponses: 1
    Dernier message: 22/08/2011, 11h42
  3. netbeans 6.5 page authentification avec JSF
    Par tunbader dans le forum JSF
    Réponses: 3
    Dernier message: 12/06/2009, 10h09
  4. créer page authentification
    Par mans27 dans le forum JSF
    Réponses: 2
    Dernier message: 27/06/2007, 12h03
  5. Script page administration et authentification Php
    Par mastercartman dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 7
    Dernier message: 11/03/2006, 17h34

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