Script PHP pour authentification
Fermé
termGSI
-
10 mai 2012 à 09:13
Loader Messages postés 58 Date d'inscription dimanche 25 novembre 2012 Statut Membre Dernière intervention 8 juillet 2013 - 15 mai 2013 à 20:23
Loader Messages postés 58 Date d'inscription dimanche 25 novembre 2012 Statut Membre Dernière intervention 8 juillet 2013 - 15 mai 2013 à 20:23
A voir également:
- Script PHP pour authentification
- Script vidéo youtube - Guide
- Double authentification google - Guide
- Easy php - Télécharger - Divers Web & Internet
- Application d'authentification facebook - Guide
- Ghost script - Télécharger - Polices de caractères
4 réponses
Bonjour
Beaucoup trop d'erreurs pour les détailler une par une. Voici un corrigé (non vérifié) avec quelques commentaires.
Je suppose que ce script est appelé à partir d'un formulaire qui contient les champs 'user' et 'mdp'.
Si tu l'essayes, recopie les messages d'erreur (au moins les premiers s'il y en a beaucoup)
Bon courage !
Beaucoup trop d'erreurs pour les détailler une par une. Voici un corrigé (non vérifié) avec quelques commentaires.
Je suppose que ce script est appelé à partir d'un formulaire qui contient les champs 'user' et 'mdp'.
Si tu l'essayes, recopie les messages d'erreur (au moins les premiers s'il y en a beaucoup)
Bon courage !
<?php include("_gestionBase.inc.php"); // Connexion à la base de données // attention aux "" autour des chaînes de caratères $connect=mysql_connect("localhost", "florian", "1234") or die("erreur de connexion au serveur".mysql_error()); // Ouverture de la base de données "festival" mysql_select_db("festival",$connect) or die("erreur de connexion à la base festival"); // Requete d'affichage des utilisateur // Autant demander directement le bon ! $requete="SELECT * FROM utilisateur WHERE id=$_POST[user] AND mdp=$_POST[mdp]"; // Éxecution de la requete (le jeux d'enregistrement $rs contient les résultats) $rs=mysql_query($requete) or die("erreur dans la requête"); // Vérification de l'utilisateur if (mysql_num_rows ($rs)>0) { /// s'il y en a au moins un $utilisateur = mysql_fetch_assoc($rs); // on récupère les infos du premier (il devrait d'ailleurs y en avoir un seul) If($utilisateur['statut'] == etablissement) // et non pas $rs=['statut'] et attention à refermer la parenthèse { echo "<a href='menuEtablissement.php'> Ouverture de la page menu établissement </a>"; // attention au point-virgule et au href='...' } Elseif ($utilisateur['statut'] == 'MDA') // MDA entre ' ou " { echo "<a href='menuMDA.php'>Ouverture de la page menu maison des associations </a>"; } } Else { echo "<a href="('erreurConnexion.php')">Ouverture de la page d'erreur connexion </a>"; } // Fermeture de la base mysql_close(); ?>
Donc, voici ce que j'ai depuis mon précédent message, modifier :
Le message d'erreur qui s'affiche est "Erreur dans la requête", mais je ne vois pas ou elle se situe, vu que ma requête semble bonne ! (C'est ligne 12 !)
Merci d'avance pour votre aide :)
<?php include("_gestionBase.inc.php"); // Connexion à la base de données $connect=mysql_connect("localhost", "florian", "1234") or die("erreur de connexion au serveur".mysql_error()); // Ouverture de la base de données "festival" mysql_select_db("festival",$connect) or die("erreur de connexion à la base festival"); // Requete d'affichage des utilisateur $requete="SELECT * FROM utilisateur WHERE id=$_POST[user] AND mdp=$_POST[mdp]"; // Éxecution de la requete (le jeux d'enregistrement $rs contient les résultats) $rs=mysql_query($requete) or die("erreur dans la requête"); // Vérification de l'utilisateur if (mysql_num_rows ($rs)>0) // s'il y en a au moins un { $utilisateur = mysql_fetch_assoc($rs); // on récupére les infos du premier (il devrait d'ailleurs y en avoir un seul) If($utilisateur['statut'] == "etablissement") { echo "<a href='menuEtablissement.php'> Ouverture de la page menu établissement </a>"; } Elseif ($utilisateur['statut'] == "MDA") { echo "<a href='menuMDA.php'>Ouverture de la page menu maison des associations </a>"; } } Else { echo "<a href='erreurConnexion.php'>Ouverture de la page d\'erreur connexion</a>"; } // Fermeture de la base mysql_close(); ?>
Le message d'erreur qui s'affiche est "Erreur dans la requête", mais je ne vois pas ou elle se situe, vu que ma requête semble bonne ! (C'est ligne 12 !)
Merci d'avance pour votre aide :)
Il y a bien une erreur dans la requête...
supposons que le mot de passe entré soit 'toto'
La requête est "SELECT ..blabla.. WHERE mdp=toto"
MySQL (qui est très bête) ne sait pas si tu veux vérifier si le champ mdp contient toto ou si le champ toto contient mdp. En fait, dans ce cas, il croit que tu veux comparer le champ mdp et le champ toto.
Pour lui dire que l'un des deux désigne une valeur, il faut entourer la valeur d'apostrophes (inutile si c'est un nombre)
->
Et c'est moi qui l'avais écrite cette erreur... Tu as le droit de me taper sur les doigts ^^
supposons que le mot de passe entré soit 'toto'
La requête est "SELECT ..blabla.. WHERE mdp=toto"
MySQL (qui est très bête) ne sait pas si tu veux vérifier si le champ mdp contient toto ou si le champ toto contient mdp. En fait, dans ce cas, il croit que tu veux comparer le champ mdp et le champ toto.
Pour lui dire que l'un des deux désigne une valeur, il faut entourer la valeur d'apostrophes (inutile si c'est un nombre)
->
$requete="SELECT * FROM utilisateur WHERE id='$_POST[user]' AND mdp='$_POST[mdp]'";
Et c'est moi qui l'avais écrite cette erreur... Tu as le droit de me taper sur les doigts ^^
Loader
Messages postés
58
Date d'inscription
dimanche 25 novembre 2012
Statut
Membre
Dernière intervention
8 juillet 2013
4
15 mai 2013 à 20:23
15 mai 2013 à 20:23
Salut, pourrais-tu mettre ton Script en téléchargement S'il te plait ? : http;//loadheberg.fr/fichiers
10 mai 2012 à 10:49
10 mai 2012 à 11:33
== 'etablissement') // apostrophes autour de etablissement
<a href='erreurConnexion.php'> // la cible du href entre apostrophes, pas de (