Ton tuto est bourré d'erreur mais il faut passer par la , cette inscription/connexion peu se faire en deux pages, mai il reste très simple:
<!--insciption.php-->
<?php
//toutes les pages son en php et on ouvre
//la session au tout début!
session_start();
//on stock le formulaire dans une variable
$formulaire =
'<html>
<head>
<title>formulaire d\'inscription</title>
</head>
<body>
<h3>formulaire d\'inscription</h3>
<p>veuillez vous inscrire:</p>
<form method = "POST" action ="inscription.php">
<p>
login: <input type="text" value = "" name ="pseudo">
mdp: <input type="password" value = "" name ="mdp">
</p>
<input type="submit" value="envoyer" name ="envoyer">
</form>
</body>
</html>';
//si $post n'existe pas on affiche le formulaire
if(isset($_POST['pseudo']) AND isset($_POST['mdp'])
{
//on verifi que les variables ne son pas vide
if(!empty($_POST['pseudo']) OR !empty($_POST['mdp'])
{
$login = $_POST['pseudo'];
$mdp = $_POST['mdp'];
//connection a la bdd (son nom est 'test')
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '');
//insertion à la bdd
$req = $bdd->prepare('INSERT INTO inscrit (login, mdp)
VALUES (:login, :mdp)');
$req->execute(array(
'login' => $login,
'mdp' => $mdp));
echo "<p>vous vous êtes bien inscrits</p>";
}
else
{
//si il on oublier un champs on affiche le formulaire
echo "<p>vous avez oublier de saisir une information</p>";
echo $formulaire;
}
}
else
{
echo $formulaire;
} ?>
////////////////////////////////////////////////
<!--connexion.php-->
<?php
session_start();
$formulaire = '
<html>
<head>
<title>formulaire de connection</title>
</head>
<body>
<h3>formulaire de connection</h3>
<p>veuillez vous connecter:</p>
<form method = "POST" action ="connexion.php">
<p>
login: <input type="text" value = "" name ="pseudo">
mdp: <input type="password" value = "" name ="mdp">
</p>
<input type="submit" value="envoyer" name ="envoyer">
</form>
</body>
</html>';
if(!empty($_POST['pseudo']) AND isset($_POST['mdp']))
{
$login = $_POST['pseudo'];
$mdp = $_POST['mdp'];
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '');
//on selectionne tout dans la bdd avec le log et mdp poster
$req = $bdd->prepare('SELECT * FROM inscrit WHERE login = ? and mdp = ?');
$req->execute(array($login, $mdp));
while($ligne = $req->fetch())
{
if($ligne['login'] == $login and $ligne['mdp']== $mdp)
{
$verif = false;
}
else
{
$verif = true;
}
}
$req->closeCursor;
if ($verif == false)
{
$_SESSION['pseudo'] = $ligne['login'];
$_SESSION['mdp'] = $ligne['mdp'];
echo 'vous vous êtes bien connectés'
}
elseif ($verif == true) {
echo '<p>vous avez fait une erreur lors de la saisie du login/mdp, recommencez:</p>';
}
}
else
{
echo $formulaire;
}
Un exemple de faille, deux membres peuvent avoir le même pseudo, se qui créer un problème majeur.
Bonne chance, l'apprentissage du php ne se fait pas en un jour...