A voir également:
- Login avec php/mysql
- On me demande mon login ✓ - Forum Webmastering
- Easy php - Télécharger - Divers Web & Internet
- Qu'est ce qu'un login ? - Forum Réseaux sociaux
- Mysql community server - Télécharger - Bases de données
- Facebook.com/login/identify en francais - Forum Facebook
3 réponses
Le sujet est vieux, mais si ça peut aider, voici un tutoriel : http://ww38.wooshi.fr/Tutoriel/17-Creer-un-systeme-de-login-en-PHP.html?subid1=20200207-0900-5444-8e94-c8e54eda0006
Bobinours
Messages postés
2898
Date d'inscription
jeudi 26 avril 2001
Statut
Membre
Dernière intervention
21 mars 2013
504
15 janv. 2003 à 15:01
15 janv. 2003 à 15:01
Salut chouchou,
Il y a plusieurs façon de faire, en voila une :
Il faut que tu crées une table UTILISATEURS dans ta base avec : Login, Pass, Droit...
Ensuite tu fais une page formulaire avec 2 champs de saisie (type TEXT et PASSWORD).
Une fois valider, tu vérifies si ces informations sont dans la base avec un :
$requete = "SELECT droit FROM utilisateurs WHERE login='". $_POST["login"] ."' AND password='". $_POST["pass"] ."'";
$result = mysql_query($requete) or die("erreur");
$num = mysql_num_rows($result);
Ensuite si $num (le nombre de resultat trouvé) est égale à 0, alors il n'y a pas d'utilisateur avec ce mot de passe. Affiche un message "Vous n'avez pas accès" puis fait un EXIT en PHP.
Sinon, tu récupères la valeur de DROIT pour savoir sur qu'elle page tu va rediriger l'utilisateur avec la fonction : HEADER("Location: page.php");
Tu choisiras soit la page simple.php ou page admin.php...
J'espère t'avoir éclairée.
-= Bobinours - http://bobin.underlands.org =-
Il y a plusieurs façon de faire, en voila une :
Il faut que tu crées une table UTILISATEURS dans ta base avec : Login, Pass, Droit...
Ensuite tu fais une page formulaire avec 2 champs de saisie (type TEXT et PASSWORD).
Une fois valider, tu vérifies si ces informations sont dans la base avec un :
$requete = "SELECT droit FROM utilisateurs WHERE login='". $_POST["login"] ."' AND password='". $_POST["pass"] ."'";
$result = mysql_query($requete) or die("erreur");
$num = mysql_num_rows($result);
Ensuite si $num (le nombre de resultat trouvé) est égale à 0, alors il n'y a pas d'utilisateur avec ce mot de passe. Affiche un message "Vous n'avez pas accès" puis fait un EXIT en PHP.
Sinon, tu récupères la valeur de DROIT pour savoir sur qu'elle page tu va rediriger l'utilisateur avec la fonction : HEADER("Location: page.php");
Tu choisiras soit la page simple.php ou page admin.php...
J'espère t'avoir éclairée.
-= Bobinours - http://bobin.underlands.org =-
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
25 mai 2010 à 18:11
25 mai 2010 à 18:11
@Julesy : il faut avoir envie de se faire hacker pour utiliser ton tutoriel : il n'y a aucune protection.
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
25 mai 2010 à 18:23
25 mai 2010 à 18:23
Je viens de faire quelques recherches rapidement, je n'ai rien trouvé à par ça :
« Pour simplifier le code, j'ai volontairement oublié la gestion des erreurs que pourraient retourner MySQL. »Mais ça, ça n'a rien à avoir avec la sécurité.
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
25 mai 2010 à 18:37
25 mai 2010 à 18:37
Justement, d'abord c'est quand on est débutant qu'il faut avoir les conseils pour sécuriser ses scripts.
Bobinours
Messages postés
2898
Date d'inscription
jeudi 26 avril 2001
Statut
Membre
Dernière intervention
21 mars 2013
504
25 mai 2010 à 21:42
25 mai 2010 à 21:42
Je suis tout à fait d'accord avec avion-f16. Même si ton initiative est bonne, Julesy, il est encore plus important d'expliquer aux débutants les quelques pièges à éviter à tout prix.
J'ai survolé très rapidement ton tutorial et voici ce que j'ai corrigé :
Le simple fait d'ajouter la fonction mysql_real_escape_string() protège ton site d'une injonction SQL.
Il manquait aussi un $ avant _POST. Cette correction est loin d'être exhaustive.
J'ai survolé très rapidement ton tutorial et voici ce que j'ai corrigé :
$query = "SELECT * FROM UTILISATEUR WHERE nomUtilisateur='".mysql_real_escape_string($_POST['login'])."' AND passwordUtilisateur='".mysql_real_escape_string($_POST['password'])."' ;";
Le simple fait d'ajouter la fonction mysql_real_escape_string() protège ton site d'une injonction SQL.
Il manquait aussi un $ avant _POST. Cette correction est loin d'être exhaustive.