Problème formulaire de connexion
cyborg_five
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
cyborg_five Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
cyborg_five Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je suis en cours de création d'un site internet, et je suis devant une impasse. J'ai créé un espace membre, le formulaire d'inscription fonctionne parfaitement toutes les informations s'inscrive dans la base de données, mais bien sûr il faut qu'il y est un mais après avoir créé le formulaire de connexion je n'arrive pas à me connecter sur mon site, je ne comprend vraiment pas. PS: Les lignes ci-dessous viennent d'un tuto car je ne savais pas du tout comment faire ;).
Voici toutes les lignes de codes:
base de données: 'rs'
table: 'utilisateurs'
1 id int(10) Non Aucune AUTO_INCREMENT
2 pseudo varchar(100) latin1_swedish_ci
3 password varchar(100) latin1_swedish_ci
4 email varchar(100) latin1_swedish_ci
5 sexe varchar(6) latin1_swedish_ci
register.php:
<h1>Incription</h1>
<?php
include ('functions/config.php');
if(isset($_POST['submit'])){
$sexe = mysql_real_escape_string(htmlentities(trim($_POST['sexe'])));
$pseudo = mysql_real_escape_string(htmlentities(trim($_POST['pseudo'])));
$password = mysql_real_escape_string(htmlentities(trim($_POST['password'])));
$repeatpassword = mysql_real_escape_string(htmlentities(trim($_POST['repeatpassword'])));
$email = mysql_real_escape_string(htmlentities(trim($_POST['email'])));
if(empty($pseudo)){
$errors[] = "Veuillez saisir un pseudo";
}
if(empty($password)){
$errors[] = "Veuillez saisir un Mot de passe";
}
if($password != $repeatpassword){
$errors[] = "Vos deux Mot de passe ne sont pas identique";
}
if(!filter_var($email,FILTER_VALIDATE_EMAIL)){
$errors[] = "Votre adresse email n'est pas correct";
}
if(!empty($errors)){
foreach($errors as $error)
{
echo "<div class='error'>".$error."</div>";
}
}else{
inscrire_utilisateur($pseudo,$password,$email,$sexe);
die('inscription terminéé');
}
}
?>
<form method='POST' action=''>
<label for='sexe'>Sexe</label>
<select name='sexe'>
<option value="Homme">Homme</option>
<option value="Femme">Femme</option>
</select><br/>
<label for="pseudo">Votre pseudo Minecraft:</label>
<input type="text" name="pseudo"><br/>
<label for="password">Votre Mot de passe:</label>
<input type="password" name="password"><br/>
<label for="repeatpassword">Repetez votre Mot de passe:</label>
<input type="password" name="repeatpassword"><br/>
<label for="email">E-mail:</label>
<input type="text" name="email"><br/>br/>
<input type="submit" value="S'inscrire" name="submit">
</form>
<a href='index.php?page=login'>Page de connexion</a>
register.func.php:
<?php
//function qui va inscrire user
function inscrire_utilisateur($pseudo,$password,$email,$sexe){
$password = sha1($password);
mysql_query("INSERT INTO utilisateurs(id,pseudo,password,email,sexe)
VALUES('','$pseudo','$password','$email','$sexe')
") or die(mysql_error());
}
?>
login.php:
<h1>Connexion</h1>
<?php
include ('functions/config.php');
if(isset($_POST['submit']))
{
if(empty($POST['pseudo'])){
$errors[] = "Veuillez saisir votre pseudo";
}
if(empty($_POST['password'])){
$errors[] = "Veuillez saisir votre mot de passe";
}
if(!empty($errors))
{
foreach($errors as $error)
{
echo"<div class='error'>".$error."</div>";
}
}else{
if(verifier_conbinaison_pseudo_password($_POST['pseudo'],$_POST['password']) == 0)
{
echo "<div class='error'>Pseudo ou Mot de passe invalide</div>";
}else{
$_SESSION['pseudo'] = $POST['pseudo'];
header("Location:index.php?page=membre");
}
}
}
?>
<form method='POST' action=''>
<label for="pseudo">Votre pseudo Minecraft:</label>
<input type="text" name="pseudo"><br/>
<label for="password">Votre Mot de passe:</label>
<input type="password" name="password"><br/>
<input type="submit" value="Se connecter" name="submit">
</form>
<a href='index.php?page=register'>Pas encore membre</a>
login.func.php:
<?php
//verification combianaison
function verifier_conbinaison_pseudo_password($pseudo,$password)
{
$pseudo = mysql_real_escape_string(htmlentities($_POST['pseudo']));
$password = mysql_real_escape_string(htmlentities($_POST['password']));
$password = sha1($password);
$query = mysql_query("SELECT pseudo,password FROM utilisateurs WHERE pseudo = '$pseudo' AND password = '$password'");
$rows = mysql_num_rows($query);
return $rows;
}
?>
membre.php:
<?php
$infos = infos_membre_connecte();
foreach($infos as $info){
echo "Bienvenue".$info['pseudo'];
}
?>
membre.func.php:
<?php
//la fonction qui va recuperer les infos du mec co
function infos_membre_connecte(){
$infos = array();
$pseudo = $_SESSION['pseudo'];
$query = mysql_query("SELECT * FROM ultilisateurs WHERE pseudo = '$pseudo'");
while($row = mysql_fetch_assoc($query)){
$infos[] = $row;
}
return $infos;
}
?>
J'espere ne pas avoir fait trop long, mais je pense que vous avez besoin de tous les fichiers pour comprendre la structure.
Merci d'avance.
Voici toutes les lignes de codes:
base de données: 'rs'
table: 'utilisateurs'
1 id int(10) Non Aucune AUTO_INCREMENT
2 pseudo varchar(100) latin1_swedish_ci
3 password varchar(100) latin1_swedish_ci
4 email varchar(100) latin1_swedish_ci
5 sexe varchar(6) latin1_swedish_ci
register.php:
<h1>Incription</h1>
<?php
include ('functions/config.php');
if(isset($_POST['submit'])){
$sexe = mysql_real_escape_string(htmlentities(trim($_POST['sexe'])));
$pseudo = mysql_real_escape_string(htmlentities(trim($_POST['pseudo'])));
$password = mysql_real_escape_string(htmlentities(trim($_POST['password'])));
$repeatpassword = mysql_real_escape_string(htmlentities(trim($_POST['repeatpassword'])));
$email = mysql_real_escape_string(htmlentities(trim($_POST['email'])));
if(empty($pseudo)){
$errors[] = "Veuillez saisir un pseudo";
}
if(empty($password)){
$errors[] = "Veuillez saisir un Mot de passe";
}
if($password != $repeatpassword){
$errors[] = "Vos deux Mot de passe ne sont pas identique";
}
if(!filter_var($email,FILTER_VALIDATE_EMAIL)){
$errors[] = "Votre adresse email n'est pas correct";
}
if(!empty($errors)){
foreach($errors as $error)
{
echo "<div class='error'>".$error."</div>";
}
}else{
inscrire_utilisateur($pseudo,$password,$email,$sexe);
die('inscription terminéé');
}
}
?>
<form method='POST' action=''>
<label for='sexe'>Sexe</label>
<select name='sexe'>
<option value="Homme">Homme</option>
<option value="Femme">Femme</option>
</select><br/>
<label for="pseudo">Votre pseudo Minecraft:</label>
<input type="text" name="pseudo"><br/>
<label for="password">Votre Mot de passe:</label>
<input type="password" name="password"><br/>
<label for="repeatpassword">Repetez votre Mot de passe:</label>
<input type="password" name="repeatpassword"><br/>
<label for="email">E-mail:</label>
<input type="text" name="email"><br/>br/>
<input type="submit" value="S'inscrire" name="submit">
</form>
<a href='index.php?page=login'>Page de connexion</a>
register.func.php:
<?php
//function qui va inscrire user
function inscrire_utilisateur($pseudo,$password,$email,$sexe){
$password = sha1($password);
mysql_query("INSERT INTO utilisateurs(id,pseudo,password,email,sexe)
VALUES('','$pseudo','$password','$email','$sexe')
") or die(mysql_error());
}
?>
login.php:
<h1>Connexion</h1>
<?php
include ('functions/config.php');
if(isset($_POST['submit']))
{
if(empty($POST['pseudo'])){
$errors[] = "Veuillez saisir votre pseudo";
}
if(empty($_POST['password'])){
$errors[] = "Veuillez saisir votre mot de passe";
}
if(!empty($errors))
{
foreach($errors as $error)
{
echo"<div class='error'>".$error."</div>";
}
}else{
if(verifier_conbinaison_pseudo_password($_POST['pseudo'],$_POST['password']) == 0)
{
echo "<div class='error'>Pseudo ou Mot de passe invalide</div>";
}else{
$_SESSION['pseudo'] = $POST['pseudo'];
header("Location:index.php?page=membre");
}
}
}
?>
<form method='POST' action=''>
<label for="pseudo">Votre pseudo Minecraft:</label>
<input type="text" name="pseudo"><br/>
<label for="password">Votre Mot de passe:</label>
<input type="password" name="password"><br/>
<input type="submit" value="Se connecter" name="submit">
</form>
<a href='index.php?page=register'>Pas encore membre</a>
login.func.php:
<?php
//verification combianaison
function verifier_conbinaison_pseudo_password($pseudo,$password)
{
$pseudo = mysql_real_escape_string(htmlentities($_POST['pseudo']));
$password = mysql_real_escape_string(htmlentities($_POST['password']));
$password = sha1($password);
$query = mysql_query("SELECT pseudo,password FROM utilisateurs WHERE pseudo = '$pseudo' AND password = '$password'");
$rows = mysql_num_rows($query);
return $rows;
}
?>
membre.php:
<?php
$infos = infos_membre_connecte();
foreach($infos as $info){
echo "Bienvenue".$info['pseudo'];
}
?>
membre.func.php:
<?php
//la fonction qui va recuperer les infos du mec co
function infos_membre_connecte(){
$infos = array();
$pseudo = $_SESSION['pseudo'];
$query = mysql_query("SELECT * FROM ultilisateurs WHERE pseudo = '$pseudo'");
while($row = mysql_fetch_assoc($query)){
$infos[] = $row;
}
return $infos;
}
?>
J'espere ne pas avoir fait trop long, mais je pense que vous avez besoin de tous les fichiers pour comprendre la structure.
Merci d'avance.
A voir également:
- Problème formulaire de connexion
- Whatsapp formulaire opposition - Guide
- Gmail connexion - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Connexion chromecast - Guide
6 réponses
latin1_swedish_ci en tant qu'encodage de MDP: pas bon, tu fais quoi si le MDP contient des caractères spéciaux que latin1 ne gère pas? Si tu oses les restreindre tu va péter la sécurité de certaines personnes qui ont choisi volontairement un MDP avec des caractères spéciaux.
mysql_real_escape_string: ewww c'est moche. Sache que les fonctions
mysql_vont disparaitre définitivement dans les prochaines versions de PHP et qu'elles sont déjà obsolètes depuis PHP 5.5. Passe à
PDOou au syntaxiquement plus proche
mysqli.
Merci pour votre réponse rapide, j'ai mis cette encodage le temp mais aprés je le chargerai en md5, je ne connaissai pas le PDO je vais essayer de l'inserer. encore merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question