Pb identification formulaire
Résolu
elise0912
-
elise0912 -
elise0912 -
Bonjour a tous,
je suis débutante en php et je bloque...
j'ai créé un site en html et php, et dans une des pages de mon site il y a un formulaire d'inscription qui permet par la suite de se log dans une autre page pour voir des tarifs.
donc si vous n'êtes pas inscrit vous ne pouvez pas voir les tarifs...
se qui me pose problème c'est que j'arrive a bloquer l'accès a la page tarif si l'utilisateur entre les mauvais password ou login. j'arrive a faire la connexion avec la base de donnée c'est a dire que quand on met le bon mot de passe et le bon login la page tarif s'ouvre...
mon soucis, qui ne le sera pas pour vous je suis sure, c'est que quand je clique sur mon bouton valider sans avoir rentré ni password ni login ma page tarif s'ouvre... j'ai tous essayer et je ne vois pas se que je dois faire...
peut être c'est un problème avec ma requête ? avec mon bouton ?
je suis un peut perdu... :-(
si vous avez des idées, je vous en remercie.
Merci d'avance
voici mes codes:
ils sont simples pour que je comprenne mieux, je débute !!! :-)
feuilleconnection.php
connection.html
Merci beaucoup
je suis débutante en php et je bloque...
j'ai créé un site en html et php, et dans une des pages de mon site il y a un formulaire d'inscription qui permet par la suite de se log dans une autre page pour voir des tarifs.
donc si vous n'êtes pas inscrit vous ne pouvez pas voir les tarifs...
se qui me pose problème c'est que j'arrive a bloquer l'accès a la page tarif si l'utilisateur entre les mauvais password ou login. j'arrive a faire la connexion avec la base de donnée c'est a dire que quand on met le bon mot de passe et le bon login la page tarif s'ouvre...
mon soucis, qui ne le sera pas pour vous je suis sure, c'est que quand je clique sur mon bouton valider sans avoir rentré ni password ni login ma page tarif s'ouvre... j'ai tous essayer et je ne vois pas se que je dois faire...
peut être c'est un problème avec ma requête ? avec mon bouton ?
je suis un peut perdu... :-(
si vous avez des idées, je vous en remercie.
Merci d'avance
voici mes codes:
ils sont simples pour que je comprenne mieux, je débute !!! :-)
feuilleconnection.php
<?php //connection a la base de donnée $connect=mysql_connect('localhost','root','') or die("Impossible de se connecter : " . mysql_error()); mysql_select_db("inscription",$connect) or die("Impossible de se connecter à la base : " . mysql_error()); extract($_POST); $login = $_POST['login']; $password = $_POST['password']; $sql = "select login,password from nouvelleins where login='".$login."' and password='".$password."'"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); if (($data['password'] == $password) && ($data['login'] == $login)) { die(header("Location:feuilletarif2.php")); } if (($data['password'] != $password) && ($data['login'] != $login)) { die(header("Location:feuilletarif.php")); } if (($data['password'] != $password) || ($data['login'] != $login)) { die(header("Location:feuilletarif.php")); } else { die(header("Location:feuilletarif.php")); } if (($data['password'] == " ") && ($data['login'] == "")) { header("Location:feuilletarif.php"); } ?>
connection.html
<form name="connection" method="post" action="feuilleconnection.php"> <div id="saisie"> <font color="#FF7F50" align=center><strong>Identifiant : </strong></font> <input type="text" name="login" size="20" maxlength="32"/><br/><br/> <font color="#FF7F50"><strong>Mot de passe :</strong></font> <input type="password" name="password" size="20" maxlength="20"/> <input type='reset' value='Annuler' name='annuler' onclick="effacer()"/> <input type='submit' value='Valider' name='Valider'/> </div> </form>
Merci beaucoup
A voir également:
- Pb identification formulaire
- Whatsapp formulaire opposition - Guide
- Entrer les informations d'identification reseau - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Supprimer identification instagram - Guide
1 réponse
Salut,
Il y a 3 choses critique sur ton script d'identification.
La première tu ne vérifie jamais l'état de tes POST
Je te conseil d'ajouter ceci
Ensuite ton code est vulnérable à l'injection SQL, je t'invite à lire ceci : https://www.commentcamarche.net/faq/30686-php-erreurs-courantes-injection-sql-xss-upload
Enfin tes mots de passes sont en claire dans ta base ce qui est très moyen car si une personne s'introduit dans ta base c'est le jackpot pour lui.
Regarder les fonctions de hash en PHP : md5() ou sha1().
Avec tout ça tu devrais avoir une page de logue un peu mieux ;)
Il y a 3 choses critique sur ton script d'identification.
La première tu ne vérifie jamais l'état de tes POST
extract($_POST); $login = $_POST['login']; $password = $_POST['password']; $sql = "select login,password from nouvelleins where login='".$login."' and password='".$password."'";
Je te conseil d'ajouter ceci
extract($_POST); $login = $_POST['login']; $password = $_POST['password']; if((isset($login) && !empty($login)) && (isset($password) && !empty($password))) { .... } else { echo "merci de saisir login ET mot de passe"; }
Ensuite ton code est vulnérable à l'injection SQL, je t'invite à lire ceci : https://www.commentcamarche.net/faq/30686-php-erreurs-courantes-injection-sql-xss-upload
Enfin tes mots de passes sont en claire dans ta base ce qui est très moyen car si une personne s'introduit dans ta base c'est le jackpot pour lui.
Regarder les fonctions de hash en PHP : md5() ou sha1().
Avec tout ça tu devrais avoir une page de logue un peu mieux ;)
elise0912
merci beaucoup pour ton aide !!! c'est génial ;-)