[RESOLU] problème avec ma page login.php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] problème avec ma page login.php

par leuk18 » 30 août 2018, 01:32

Bonsoir vraiment par miracle de mes multiples test ça passe maintenant. Encore merci.

Re: problème avec ma page login.php

par correlatif » 29 août 2018, 23:51

Tu ne passe peut être pas la condition pour être redirigé.
  
if(password_verify($_POST['password'],$user->password))
{
    $_SESSION['auth'] = $user;
    header('Location:index.php');
    exit();	
  }
else
{
      echo 'Echec de l\'authentification';
}
Si tu utilises password_verify tu dois utilisé dans ta page sign_up.php la fonction password_hash avant de l'inséré dans ta base de données au lieu d'un hash md5.
$password =  password_hash($_POST['password'], PASSWORD_DEFAULT);
Et faire attention que la colonne mysql accepte le hash entier.

par leuk18 » 29 août 2018, 17:50

Bonsoir, franchement je ne comprends rien.Depuis que code en PHP je n'ai pas pû codé une page login.php, j'arrive bien à inscrire un utilisateur sur ma $bdd ,mais trés compliqué pour qu'un utilisateur soit connecter avec ses identifiants.Toujours rien ne passe après validation .Pas de page blanche mais reste sur la même page.
Vraiment c'est décourageant ce PHP.

Re: problème avec ma page login.php

par @rthur » 29 août 2018, 02:23

Et donc, qu'en déduis-tu ?
Regarde ton code à la ligne 3 et tu devrais voir le problème.

Voici la doc de la fonction ini_set : https://php.net/ini_set

Re: problème avec ma page login.php

par leuk18 » 29 août 2018, 01:45

Traduction
Attention :ini_set() attend exacttement deux paramètres,un donné à la ligne 3.

Re: problème avec ma page login.php

par @rthur » 28 août 2018, 17:22

Si tu traduit en français ce message d'erreur, que comprends tu ?

par leuk18 » 28 août 2018, 12:07

Je viens d'activer les erreurs ,mais ce que ça affiche
Warning:ini_set() experts exactly 2 paramètres.1 given on Line 3

Re: problème avec ma page login.php

par leuk18 » 28 août 2018, 11:55

Bonjour ,et merci pour votre aide,en réalité si l'utilisateur est déjà inscrit ,il doit se connecter pour revenir à la page d'accueil.Mais quand je me connecte rien ne se passe il reste toujours sur la page de connexion.

Re: problème avec ma page login.php

par @rthur » 28 août 2018, 09:29

Si ça affiche une page blanche, voici une piste pour débuguer :
faq-tutoriels/page-blanche-script-php-c ... 73178.html

problème avec ma page login.php

par leuk18 » 28 août 2018, 01:58

Bonsoir je viens à vous pour pouvoir terminer ma page membre de mon site.
Mon problème ,ma page de connexion (sign_up.php) marche bien , j'arrive à inscrire un utilisateur.Mais ma page de connexion (login.php) ne marche pas ,elle n'affiche rien,quand je me connecte.
J'utilise WampServer V2.5
sign_up.php
 <?php
session_start();
include('config.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <link rel="stylesheet" href="img.css"/>
        <title>Espace membre</title>
    </head>
    <body>
    	<div class="header">
        	<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/img/logo.png" alt="Espace Membre" /></a>
	    </div>
        <div class="content">
<?php
if (isset($_SESSION['id']) AND isset($_SESSION['pseudo']))
{
echo 'Bonjour ' . $_SESSION['pseudo'];
}
?>
<?php
require_once 'function.php';
if(!empty($_POST)){
	$errors = array();
		require_once 'config.php';
		
	if(empty($_POST['username'])){
		$errors['username'] = "Votre pseudo est vide";
	}else{
	$req = $pdo->prepare("SELECT id FROM membres WHERE username = ?");
$req->execute([$_POST['username']]);
$user = $req->fetch();
if($user){
$errors['username'] = "Ce pseudo est déja utilsé";	
	
}
 
	}
	if(empty($_POST['email']) || !filter_var($_POST['email'],FILTER_VALIDATE_EMAIL)){
		$errors['email'] = "Votre email n'est pas valide";
		}else{
	$req = $pdo->prepare("SELECT id FROM membres WHERE email = ?");
$req->execute([$_POST['email']]);
$user = $req->fetch();
if($user){
$errors['email'] = "Cet email est déja utilsé";	
	
}
	}
	if(empty($_POST['password']) || $_POST['password'] != $_POST['password_confirm']){
		$errors['password'] = "Vous devez rentrer un mot de passe valide";
	}
	if(empty($errors)){
	$req = $pdo->prepare("INSERT INTO membres SET username=?,password=?,email=?");
	$password = md5($_POST['password']);
	$req->execute([$_POST['username'],$password,$_POST['email']]);
	exit();
	}	
	
	}
?>
<h1>S'inscrire</h1>
<form action="sign_up.php" method = "POST">
<div class="form-group">
<label for="">Pseudo</label>
<input type ="text" name="username" placeholder="Franc18" class="form-control"  />
</div>

<div class="form-group">
<label for="">Adresse email</label>
<input type ="text" name="email" placeholder="[email protected]" class="form-control"  />
</div>

<div class="form-group">
<label for="">Mot de passe</label>
<input type ="password" name="password" placeholder="xjvfgh134" class="form-control" />
</div>

<div class="form-group">
<label for="">Confirmer mot de passe</label>
<input type ="password" name="password_confirm" placeholder="xjvfgh134" class="form-control" />
</div>
<button type="submit" class="btn-btn-primary">M'inscrire</button>
</form>
		<div class="foot"><a href="index.php">Retour &agrave; l'accueil</a> - <a href="#">Support du Web</a></div>
	</body>
</html>
Ensuite login.php
<?php
include('config.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <link rel="stylesheet" href="img.css"/>
        <title>Espace membre</title>
    </head>
    <body>
    	<div class="header">
        	<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/img/logo.png" alt="Espace Membre" /></a>
	    </div>
        
<?php
// Vérification des identifiants
if(!empty($_POST) && !empty($_POST['username']) && !empty($_POST['password'])){
	$req = $pdo->prepare('SELECT * FROM membres WHERE username = :username OR email = :username');
	$req->execute(['username'=>$_POST['username']]);
	$user  = $req->fetch();
	if(password_verify($_POST['password'],$user->password)){
		$_SESSION['auth'] = $user;
	header('Location:index.php');
exit();	
	}
}

?>
<div class="content">
    <form action="login.php" method="post">
        Veuillez entrer vos identifiants pour vous connecter:<br />
        <div class="center">
            <label for="username">Nom d'utilisateur</label><input type="text" name="username" id="username" value="" /><br />
            <label for="password">Mot de passe</label><input type="password" name="password" id="password" /><br />
            <input type="submit" value="Se connecter" />
		</div>
    </form>
</div>
<?php ?>
		<div class="foot"><a href="sign_up.php">Retour &agrave; l'accueil</a> - <a href="http://www.supportduweb.com/">Support du Web</a></div>
	</body>
</html>