formulaire authentification

root acces
Invité n'ayant pas de compte PHPfrance

20 déc. 2020, 20:33

Salut j'ai un probleme sur mon code qui ne marche pas qui peut m'aider , Merci. PS: non je rigole regarder après le code :D
[html]<?php
setcookie('login', time() + 365*24*3600, null, null, false, true);
session_start();
?>
<!DOCTYPE html>
<html>
    <?php include("page/include/header.php"); ?>
    <body>
    <div id="body">
			<div id="content">
				<form method="post" action="index.php">
					<p>Nom : </p> <input input name="name" id="Name"/><br />
					<p>Mot de passe : </p> <input input type="password" name="password" id="Password" /><br /><br />
					<input type="checkbox" name="connect_open" id="case" /> <label for="case">rester connecter</label><br /><br />
					<input id="submit" type="submit" value="Submit" />
				</form>
				</div>
				<?php
				  if ($_SERVER["REQUEST_METHOD"] == "POST") {
				      if($_POST['connect_open'] == 1){
				          $_COOKIE['login'] = true;
				      }
				      try
				      {
				          $bdd = new PDO('mysql:localhost', 'identifients' , 'mot de passe');
				          }
				      }
				      catch(Exception $e)
				      {
				          die('Erreur : '.$e->getMessage());
				      }
				      $reponse = $bdd->query('SELECT * FROM identifients');
				           while ($donnees = $reponse->fetch())
				          {
				              if($donnees['Passwords'] == $_POST['password']){
				                  $_SESSION['login'] = true;
				                  header('Location: page/message.php');
				              }else{
				                   echo "<p>retaper vos identifients</p>";
				              }
				      $reponse->closeCursor();
			     }
		?>
    </div>
    </body>
</html>[/html]
En gros mon code permet de de se connecter a la base de données identifients puis de regardé si dans la colonne mot de passe si quelque chose correspond au mot de passe rentré dans le formuulaire seulement je ne comprend pas pourquoi mais cette partie de code ne marche pas :
				          $reponse = $bdd->query('SELECT * FROM identifients');
				          while ($donnees = $reponse->fetch())
				          {
				              if($donnees['Passwords'] == $_POST['password']){
				                  $_SESSION['login'] = true;
				                  header('Location: page/message.php');
				              }else{
				                   echo "<p>retaper vos identifients</p>";
				              }
merci d'avance.

Mammouth du PHP | 2703 Messages

20 déc. 2020, 20:42

$bdd = new PDO('mysql:localhost', 'identifients' , 'mot de passe');
}

ne pose pas de problème ?

il faut débuguer, afficher le contenu de $donnees['Passwords'], de $_POST['password']

le formulaire de création d'un compte empêche d'avoir un mot de passe déjà utilisé ?

Petit nouveau ! | 3 Messages

21 déc. 2020, 12:15

Bonjour , Non cette partie du code ne ma pose pas de problème mais par contre en voulant afficher le contenu de
 echo $donnees['Passwords']; 
je n'ai pas réussi a afficher les données

Petit nouveau ! | 3 Messages

21 déc. 2020, 14:01

$bdd = new PDO('mysql:localhost', 'identifients' , 'mot de passe');
}

ne pose pas de problème ?

il faut débuguer, afficher le contenu de $donnees['Passwords'], de $_POST['password']

le formulaire de création d'un compte empêche d'avoir un mot de passe déjà utilisé ?
Non c'est un formulaire de connections et pas d'enregistrement .

Mammouth du PHP | 2703 Messages

21 déc. 2020, 15:22

Non c'est un formulaire de connections et pas d'enregistrement .
j'ai bien compris. mais si 2 personnes ont le même mot de passe, il va y avoir un problème.

Petit nouveau ! | 3 Messages

21 déc. 2020, 20:18

Non c'est un formulaire de connections et pas d'enregistrement .
j'ai bien compris. mais si 2 personnes ont le même mot de passe, il va y avoir un problème.
pas de problème a ce sujet je créée les mots de passes moi mème c'est un site pour ma classe donc aucun risque que deux personnes est le même mot de passe il ne peuvent pas s’inscrire ou se désinscrire.