Mot de pass (php)

evolution -  
avion-f16 Messages postés 20367 Statut Contributeur -
Bonjour,
e ne connait que le html et le css et j'aurai besoin d'une notion de php.
voici le "formulaire" que j'ai fait:

<form method="post" action="traitement.php">
<p>
<label for="id">quel est le numéros ?</label><br />
<textarea name="id" id="id" rows="10" cols="50"></textarea><br />
<label for="mdp">Quel est le mot de pass ?</label><br />
<input type="text" name="mdp id="mdp" tabindex="15" /><br />
</p>

je souhaiterai que l'ID et le mot de passe soit lié ( un numéros correspond a un seul mot de pass)
je voudrai aussi que si le mot de passe soit bon l'internaute soit dirigé vers un page si il est faut vers une autre....
help :s
A voir également:

1 réponse

avion-f16 Messages postés 20367 Statut Contributeur 4 509
 
Au tout début de ton fichier (aucun caractère avant "<?php") :
<?php
session_start();

$form = '<form method="post" action=""> 
	<p> 
		<label for="id">Quel est le numéro ?</label><br/>
		<input type="text" id="id" name="id" />
	</p>
	<p>
		<label for="mdp">Quel est le mot de passe ?</label><br/>
		<input type="password" name="mdp" id="mdp" tabindex="15" />
	</p>
	<p>
		<input type="submit" value="Connexion" />
	</p>
</form>';

$comptes = array(
	'id1' => 'mdp1',
	'id2' => 'mdp2',
	// ...
);

if(!empty($_POST)) {
	$id = trim($_POST['id']);
	$mdp = trim($_POST['mdp']);
	
	if(empty($id) || empty($mdp)) {
		$afficher = 'Merci de remplir tous les champs.<br/>'.$form;
	} else {
		if(array_key_exists($id,$comptes)) {
			if($comptes[$id] == $mdp) {
				$_SESSION['connecte'] = true;
				header('Location: page_protegee.php');
				die();
			} else 
				$afficher = 'Mot de passe invalide.<br/>'.$form;
		} else
			$afficher = 'ID inconnu<br/>'.$form;
	}
} else {
	$afficher = $form;
}
?>
Ensuite, place ce code là où tu veux voir le formulaire :
<?php echo $afficher; ?>

Sur la page que tu souhaites protéger, au tout début :
<?php
session_start();
if($_SESSION['connecte'] !== true) {
	header('Location: formulaire.php');
	die();
}
?>
1