probleme avec le input de type submit
- Accueil
- Forum
- Programmation
- PHP
- probleme avec le input de type submit
TheMister730 Le 12 février 2019 à 04:52 (Édité le 17 février 2019 à 02:04)
(ceci c'est ma page php)
<link rel="stylesheet" type="text/css" href="style_connexion.css">
<?php
session_start();
try{
$db = new PDO('mysql:host=localhost;dbname=site-web', 'root', '');
$db->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER);
$db->setATTRIBUTE(PDO::ATTR_ERRMODE , PDO::ERRMODE_EXCEPTION);
}
catch (Exception $e) {
echo "une erreur est survenue";
die();
}
require_once('include/header.php');
include_once('Cookie_connect.php');
if(isset($_POST['submit'])){
$username = htmlspecialchars($_POST['username']);
$password = sha1($_POST['password']);
if(!empty($username) AND !empty($password)){
$requser = $db->prepare("SELECT * FROM people WHERE username = ? AND password= ?");
$requser->execute(array($username, $password));
$userexist = $requser->rowCount();
if($userexist == 1){
if(isset($_POST['remember'])){
setcookie('username',$username,time()+24*3600,null,null,false,true);
setcookie('password',$password,time()+24*3600,null,null,false,true);
}
$userinfo = $requser->fetch();
$_SESSION['id'] = $userinfo['id'];
$_SESSION['pseudo'] = $userinfo['pseudo'];
$_SESSION['mail'] = $userinfo['mail'];
header("Location: profil1.php?id=".$_SESSION['id']);
}else{
$erreur = "Mauvais Username ou Mot de passe !";
}
}else{
$erreur = "Tous les champs doivent être compléter !";
}
}
?>
<br/>
<br/>
<br/>
<br/>
<br/>
<div class='login-box'>
<h1>Login</h1>
<div class="textbox">
<i class="fa fa-user" aria-hidden="true"></i>
<input type="text" placeholder="Username" name="username" value="" />
</div>
<div class="textbox">
<i class="fa fa-lock" aria-hidden="true"></i>
<input type="text" placeholder="Password" name="password" value="" />
</div>
<br/>
<div class="checkbox">
<label for="remember">Se souvenir de moi :</label><input type="checkbox" name="remember" id="remember" />
</div>
<br/>
<br/>
<input class="btn" type="submit" name="submit" value="Singn in" />
</div>
<?php
if(isset($erreur)){
echo$erreur;
}
?>
(est celle ci c ma page css)
@import "https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css";
body{
margin: 0;
padding: 0;
font-family: sans-serif;
background: url('img/bg.jpg') no-repeat;
background-size: cover;
}
.login-box{
width: 280px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
color: white;
}
.login-box h1{
float: left;
font-size: 40px;
border-bottom: 6px solid #4caf50;
margin-bottom: 50px;
padding: 13px 0;
}
.textbox{
width: 100%;
overflow: hidden;
font-size: 20px;
padding: 8px 0;
margin: 8px 0;
border-bottom: 1px solid #4caf50;
}
.textbox i{
width: 26px;
float: left;
text-align: center;
}
.textbox input{
border: none;
outline: none;
background: none;
color: white;
font-size: 18px;
width: 80%;
float: left;
margin: 0 10px;
}
.btn{
width: 100%;
background: none;
border: 2px solid #4caf50;
color: white;
padding: 5px;
font-size: 18px;
cursor: pointer;
margin-left: 1%;
margin-top: -2%;
}
.checkbox{
width: 100%;
overflow: hidden;
font-size: 18px;
}
felix9743 Le 12 février 2019 à 19:26 (Édité le 1 janvier 1970 à 01:00)
TheMister730 Le 12 février 2019 à 22:04 (Édité le 1 janvier 1970 à 01:00)
Profil introuvable Le 12 février 2019 à 22:44 (Édité le 1 janvier 1970 à 01:00)
Pour bien comprendre, n'hésite pas à consulter la documentation dédiée + ceci 😉 Tu verras que quelques éléments sont obsolètes depuis...
Et comme l'a dit @felix9743, sans balise "form" aucun traitement n'est effectué... 🙅
Si le problème est résou, n'hésite pas à cliquer sur le bouton. 😉
Bonne continuation sur PrimFX.com ! 😉
TheMister730 Le 13 février 2019 à 00:01 (Édité le 1 janvier 1970 à 01:00)
Profil introuvable Le 13 février 2019 à 02:41 (Édité le 1 janvier 1970 à 01:00)
Ah d'accord donc que souhaite-tu faire exactement ? Envoyer les informations saisis du formulaire ? As-tu des messages d'erreur ?
Dis-moi/nous tout au maximum pour qu'on puisse t'aider ! 😉
TheMister730 Le 13 février 2019 à 03:59 (Édité le 1 janvier 1970 à 01:00)
felix9743 Le 13 février 2019 à 08:47 (Édité le 13 février 2019 à 08:56)
Voici ton code HTML un peu modifié :
<div class='login-box'>
<form method="POST">
<h1>Login</h1>
<div class="textbox">
<i class="fa fa-user" aria-hidden="true"></i>
<input type="text" placeholder="Username" name="username" value="" />
</div>
<div class="textbox">
<i class="fa fa-lock" aria-hidden="true"></i>
<input type="text" placeholder="Password" name="password" value="" />
</div>
<br/>
<div class="checkbox">
<label for="remember">Se souvenir de moi :</label><input type="checkbox" name="remember" id="remember" />
</div>
<br/>
<br/>
<input class="btn" type="submit" name="submit" value="Singn in" />
</form>
</div>
Concrètement, qu'est-ce que j’ai fait ?
J'ai rajouté la balise form avec comme méthode POST pour pouvoir récupérer les informations.
<form method="POST">
</form>
N’hésite pas à me demander plus d'information si besoins.
PS : J'ai vu dans le code que tu as posté que le hachage utilisé est le SHA1. Si tu l'utilises dans le but de faire de tester rapide, c'est bon. Mais si c'est dans le but de l'utiliser dans un site... Je te recommande de le fuir.
TheMister730 Le 13 février 2019 à 12:05 (Édité le 1 janvier 1970 à 01:00)
TheMister730 Le 13 février 2019 à 12:13 (Édité le 1 janvier 1970 à 01:00)
felix9743 Le 13 février 2019 à 14:55 (Édité le 1 janvier 1970 à 01:00)
Je te conseil d'utilisé plutôt Bcrypt qui lui, a été créer pour ça.
Lien utile :
- https://www.sha1.fr/questions = Question réponse sur le SHA1.
- https://secure.php.net/manual/fr/function.password-hash.php = Documentation officielle sur l'utilisation du Bcrypt sur PHP.
- https://gist.github.com/epixoip/a83d38f412b4737e99bbef804a270c40 = Petit bonus qui montre à quelle vitesse ont peu calculé la valeur d'un hash.
Si tu as des questions, n’hésite pas.
TheMister730 Le 16 février 2019 à 01:58 (Édité le 1 janvier 1970 à 01:00)
felix9743 Le 16 février 2019 à 17:52 (Édité le 1 janvier 1970 à 01:00)
1) Regarde le lien N°2 que je tes donné
2) Si ton problème est résolu, met ton sujet en résolu !
3) Si tu veux parler plus en détail de sécurité et du Bcrypt, créer un sujet adapté sur le forum, je serait ravie d'en parlé avec toi.