Posez votre question Signaler

Pbm authentification en php:mysql [Résolu]

parisien4ever 39Messages postés 8 novembre 2004Date d'inscription - Dernière réponse le 9 févr. 2005 à 09:28
voila
J'ai un index.html contenant un formulaire dans leqeul les utilisateurs rentrent leur login et mot de passe pour s'authentifier.
Ce formulaire fait appel a une methode post, et appel un fichier authentif.php qui lui vérifie les champs voici le code de ce php
<?php
// on se connecte MySQL
$db = mysql_connect('localhost', '***', '***');

// on slectionne la base
mysql_select_db('authentification',$db);



// on envoie la requte
$Resultat=mysql_query("SELECT * FROM `utilisateurs` WHERE `nom` LIKE '$utilisateur' AND `mdp` LIKE '$pwd'");



if (mysql_numrows($Resultat) == 1)
{
echo "OK vous pouvez voir";
}
else
{
echo "Non, vous n'tes pas inscrit";
}



// on ferme la connexion mysql
mysql_close();
?>
Le souci est que cela n'aboutit pas , on me retourne l'erreur que les variables utilisateur et pwd ne sont pas reconnus dans authentif.php alors que ce sont les noms des champs de texte dans le formulaire
Quelqu'un a t'il une idée ???
Lire la suite 

Pbm authentification en php:mysql »

10 réponses
Réponse
+0
moins plus
Salut,

Essaye d'enlever les guillmets autour de ta variable $utilisateur quand tu séléctionne ta base, et pareil pour le mot de passe.

Si ça marche pas, dis-le.

@+

______________________________________________________
...:::=============== ERDNAX ================:::...
Ajouter un commentaire
Réponse
+0
moins plus
Salut,

tu peux essayer avec ca :
$Resultat=mysql_query("SELECT * FROM `utilisateurs` WHERE `nom` LIKE '$_POST[utilisateur]' AND `mdp` LIKE '$_POST[pwd]'");

dans ton php.ini si register_globals est a off, il faut utiliser le tableau $_POST tandis que s'il est a on, il suffit d'utiliser $nom_du_champs.

tiens moi au courant
Ajouter un commentaire
Réponse
+0
moins plus
merci de vos réponses, j'ai changer la valeur register_globals qui était sur off pour la mettre sur on mais cela ne change rien sniff :'(
Ajouter un commentaire
Réponse
+0
moins plus
lorsque je mets LIKE '$_POST[pwd] , il me dit index indéfini
Ajouter un commentaire
Réponse
+0
moins plus
j'ai toujours mon soucis quelqu'un a t'il une solution svpppppppp
Ajouter un commentaire
Réponse
+0
moins plus
voici le message qu cela me retourne :
Notice: Undefined index: utilisateur in l:\authentif.php on line 13

Notice: Undefined index: pwd in l:\authentif.php on line 13
Non, vous n'tes pas inscrit
Ajouter un commentaire
Réponse
+0
moins plus
Bonsoir,

Il faut mettre des guillemets dans $_POST['utilisateur']:

$Resultat=mysql_query("SELECT * FROM `utilisateurs` WHERE `nom` LIKE '".  $_POST['utilisateur'] ."' AND `mdp` LIKE '" . $_POST['pwd']."'"); 


Pour des soucis de sécurité et de compatibilité avec d'autres serveurs qui interpréteront ton code, je te conseille de laisser register_global à off et d'utiliser les variables $_POST et $_GET lors de la récupération d'un formulaire par exemple...
Ajouter un commentaire
Réponse
+0
moins plus
merci de ta réponse mais même avec ta requête j'ai toujours le même message d'erreur, je commence a désespérer :(
Ajouter un commentaire
Réponse
+0
moins plus
Vérifie le nom de tes champs dans tes formulaires, teste tes variables après envoi d'un formulaire:

echo $_POST['utilisateur'];
Ajouter un commentaire
Réponse
+0
moins plus
Miracle ca fonctionne !!!
Merci pour tout je m'était trompé dans le nom de la variable il manquait un s :s
Merci ;)
Ajouter un commentaire
Ce document intitulé « pbm authentification en php:mysql » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook