Authentification html bdd
Résolu
phoneutria
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
-
a70m Messages postés 2763 Date d'inscription Statut Contributeur Dernière intervention -
a70m Messages postés 2763 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour/bonsoir !
j'ai un petit soucis en fait, je dois créer une page d'authentification qui va "pêcher" ses infos dans une base de données, jusque là pas de soucis.... lorsqu'un utilisateur enregistré se log il rentre parfaitement, lorsqu'il fait une faute il est redirigé ailleur...donc voici mon soucis.... il suffit de ne mettre ni identifiant ni mot de passe pour passer....
Je n'y connais pas grand chose pour être franc, c'est pour un projet de stage et mon chef m'a mit au défi de réussir un projet dans lequel je n'y connaissais strictement rien)
voici la partie du code qui pose problème, pourriez vous me dire ce que vous en pensez?
j'ai un petit soucis en fait, je dois créer une page d'authentification qui va "pêcher" ses infos dans une base de données, jusque là pas de soucis.... lorsqu'un utilisateur enregistré se log il rentre parfaitement, lorsqu'il fait une faute il est redirigé ailleur...donc voici mon soucis.... il suffit de ne mettre ni identifiant ni mot de passe pour passer....
Je n'y connais pas grand chose pour être franc, c'est pour un projet de stage et mon chef m'a mit au défi de réussir un projet dans lequel je n'y connaissais strictement rien)
voici la partie du code qui pose problème, pourriez vous me dire ce que vous en pensez?
if(isset($_POST["userform"])) $userform=strtoupper($_POST["userform"]); else $userform="noname"; if(isset($_POST["passform"])) $passform=$_POST["passform"]; else $passform="nopass";
A voir également:
- Authentification html bdd
- Editeur html - Télécharger - HTML
- Double authentification google - Guide
- Html br - Forum HTML
- Authentification transcash avis ✓ - Forum Consommation & Internet
- Espace html - Astuces et Solutions
6 réponses
Salut, en PHP, personnellement, je réfléchis sur Papier.
Donc en gros, tu veux faire un espace membre.
Donc, déjà, on va récupérer ce que l'utilisateur à rentré dans le champs PSEUDO et PASS
pour ça on aura :
Ensuite, on va vérifier que ces champs existent et s'ils ne sont pas vides.
On aura :
ICI, tu feras ta requête qui vérifiera si le membre existe et que le pass correspond au membre. Si oui, il peut entrer sur le site.
Et n'oublie pas ensuite de fermer les deux IF qu'on a ouert plus haut:
Cordialement
Donc en gros, tu veux faire un espace membre.
Donc, déjà, on va récupérer ce que l'utilisateur à rentré dans le champs PSEUDO et PASS
pour ça on aura :
$pseudo = $_POST['userform'] ; $pass = $POST['passform'] ;
Ensuite, on va vérifier que ces champs existent et s'ils ne sont pas vides.
On aura :
if ( isset($pseudo) AND isset($pass)) { if ($pseudo != NULL AND $pass != NULL) {
ICI, tu feras ta requête qui vérifiera si le membre existe et que le pass correspond au membre. Si oui, il peut entrer sur le site.
Et n'oublie pas ensuite de fermer les deux IF qu'on a ouert plus haut:
} }
Cordialement
Bon je viens de voir que je n'ai pas protégé les $_POST
Donc n'importe qui pourrait entrer du code HTML ou un requête SQL
Si ça t'intérrèsse, pour sécuriser un champs d'un formulaire, lors de la redéfinition de tes variables, rajoute la fonction
mysql_real_escape_string ET
htmlspecialchars
On aura donc :
Cordialement
Donc n'importe qui pourrait entrer du code HTML ou un requête SQL
Si ça t'intérrèsse, pour sécuriser un champs d'un formulaire, lors de la redéfinition de tes variables, rajoute la fonction
mysql_real_escape_string ET
htmlspecialchars
On aura donc :
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['userform'])) ; $pass = mysql_real_escape_string(htmlspecialchars($POST['passform'])) ;
Cordialement
Merci beaucoup à toi mais j'ai fais une gaffe apparemment car ça ne va pas ^^".
Voici ma page, peux tu y jeter un oeil lorsque tu as le temps?
oups ça fait un peu grand je crois ... Je me suis perdu quelque part mais je ne sais pas où...comme dit plus haut, je n'y connais rien (ou presque) : /
Voici ma page, peux tu y jeter un oeil lorsque tu as le temps?
<?php require("password.inc"); $pseudo = $_POST['userform']; $pass = $_POST['passform']; if ( isset($pseudo) AND isset($pass)) { if ($pseudo != NULL AND $pass != NULL) { if(isset($_POST["userform"])) $userform=strtoupper($_POST["userform"]); if(isset($_POST["passform"])) $passform=$_POST["passform"]; } } $conn = mysql_connect ($host, $user, $pwd); mysql_select_db ($database, $conn); // on teste si une entrée de la base contient ce couple login / pass $sql = 'SELECT * FROM utilisateurs WHERE nom="'.$pseudo.'"'; $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); $data = mysql_fetch_assoc($req); // verification du mot de passe entré if($data['password']==$pass) { echo ' <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" > <head><style type="text/css"> p.double {border-style:double;} </style> <title>Caméra. police domaniale.</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <body> <h1><center><p class="double">test camera</p></center></h1> <a href="#" onClick="window.open(\'test.html\',\'_blank\',\'toolbar=0, location=0, directories=0, status=0, scrollbars=0, resizable=1, copyhistory=0, menuBar=0, width=330, height=250\');return(false)"><center>test</center></a> </body> </html> '; } else {echo ' <center>Le mot de passe ou identifiant n\'est pas reconnu! Veuillez vérifier l\'orthographe.<br><br> <input type="button" name="lien1" value="Réessayer" onclick="self.location.href=\'index.php\'" style="background-color:#c0c0c0" style="color:black; font-weight:bold"onclick> </center>'; } mysql_close(); ?>
oups ça fait un peu grand je crois ... Je me suis perdu quelque part mais je ne sais pas où...comme dit plus haut, je n'y connais rien (ou presque) : /
C'est dans les deux IF que j'ai fait, tu as collé ce que tu avaais avant et ce que je t'ai corrigé.
Dans les deux if que je t'ai donné, il faut que tu mettes te requête SQL
Dans les deux if que je t'ai donné, il faut que tu mettes te requête SQL
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
je test de suite!