function connexion($host, $user, $password, $dbname) { // S'il y a un problème de connexion on retourne à la page de connexion avec affichage de l'erreur // On vérifie si les champs de login et mot-de-passe sont remplis (sans se connecter à la base de données) if (login_mdp_remplis($_POST["login"], $_POST["mdp"])) { //echo $_POST["login"]." ". $_POST["mdp"] ; // On se connecte à la base pour vérifier le login ou mot-de-pase connexion_bd($id, $host, $user, $password, $dbname); // Si la connexion a réussie (nb : en fait si la connexion ne réussi pas, la fonction connexion_bd tue le programme. On laisse quand même cette condition au cas où l'on modifie la connexion_bd pour juste afficher un message d'erreur. if (isset($id)) { // On traite le mot de passe pour éviter qu'une personne malveillante se connecte sans mot de passe $_POST["mdp"] = mysql_real_escape_string($_POST["mdp"]); // On vérifie le login et le mot de passe : // dans la table Personne, le nom de la colonne du login de la table, le nom de la colonne du mot-de-passe de la table, le login a vérifier, le mot de passe a vérifier, l'id de la connexion avec la base if (!login_mdp_ok("utilisateur", "Adresse_mail", "MDP", $_POST["login"], $_POST["mdp"], $id)) { header("Location:connexion.php"); } else { // La connexion s'est bien déroulée, on retourne à la page d'accueil avec l'utilisateur authentifié et on garde ses information dans la session en cours charger_session($_POST); // Et si l'utilisateur souhaite qu'on se souvienne de la session, même s'il éteint son PC, on l'enregitre via un cookie if (isset($_POST["rester_co"])) { setcookie("login", $_POST["login"]); setcookie("mdp", $_POST["mdp"]); } print_r($_COOKIE); header("Location:index.php"); } // On ferme la connexion de la base, car on a plus de besoin de vérifier le login ou mot-de-pase mysqli_close($id); } } else { header("Location:connexion.php"); } }
</head> <body> <?php // S'il y a déjà eu des erreurs lors de l'inscription, les supprimer car on fait une nouvelle tentative d'inscription. Si l'inscription se déroule bien, il n'y aura plus d'erreurs. if (isset($_SESSION["erreur_inscription"])) { unset($_SESSION["erreur_inscription"]); } //print_r($_POST) ; // On vérifie si les données rentrées par l'utilisateur, sont correctes if (inscription_ok($_POST)) { // On ajoute l'utilisateur à la base de données (là on pas besoin de mettre le nom de la table, contrairement aux fonctions login_existe, mdp_existe... ) // On se connecte à la base connexion_bd($id, $host, $user, $password, $dbname); // Si la connexion a réussie if (isset($id)) { // On ajoute l'utilisateur inscrit_utilisateur($id, $_POST); // On revient ensuite à la page d'accueil header("Location:index.php"); } } ?> <a href = "connexion.php"> Retour à la page de connexion </a> </body> </html>