Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // 3 => Connexion à la DB avant d'effectuer notre requête
- require_once ('../includes/db-connect.php');
- //4 => On récupère les variables du formulaire de connexion du backend
- $email = isset($_POST['email']) ? $_POST['email'] : '';
- $password = isset($_POST['password']) ? md5($_POST['password']) : '';
- //$password = isset($_POST['password']) ? $_POST['password'] : '';
- // 5 => Si les variables du form ne sont pas vides on intérroge la base de données pour trouver le user
- if(!empty($email) && !empty($password)) {
- // Gestion des exceptions PDO
- try {
- // 6 => Requête à la DB pour savoir si MySql connait ce user et peut nous communiquer son password
- // Requête SQL pour rechercher le user
- $sql = "SELECT * FROM newsletter WHERE email = '$email' AND password = '$password'";
- // On exécute la requête
- $req = $db->query($sql);
- // On récupère le résultat et on le stocke sous forme de tableau dans $datas
- $datas = $req->fetch(PDO::FETCH_ASSOC);
- // 7=> Si les valeurs email et password sont renseignées, le user a été trouvé.
- if( !empty($datas['email']) && !empty($datas['password']) && $datas['is_admin'] ) {
- // DEBUG
- //print_r($datas);
- // On démarra la session
- session_start();
- // On stocke sur le serveur dans la superglobale $_SESSION les infos de connexion du user
- $_SESSION['email'] = $email;
- $_SESSION['password'] = $password;
- $_SESSION['admin'] = $datas['is_admin'];
- $_SESSION['logged'] = true;
- // 8 enfin, on redirige le user vers la page dashboard.php et on lui passe en param les var prenom et nom
- header('Location: ../backend/dashboard.php?nom='.$datas['nom'].'&prenom='.$datas['prenom'].'');
- }
- elseif(!empty($datas['email']) && !$datas['is_admin']) {
- header('Location: ../backend/index.php?erreur=3');
- }
- // sinon; la db ne le connaît pas, on le redirige vers la page de connexion avec en param dans l'url le code erreur 1
- else {
- //
- header('Location: ../backend/index.php?erreur=2');
- }
- /*
- * Pour fermer la connexion avec la BDD, il suffit d'utiliser cette ligne :
- */
- $db = null;
- // puis après l'insertion on redirige vers l'index avec en param dans l'url le code success = 1
- //header('Location: index.php?success=1');
- }
- catch(PDOException $e)
- {
- /*
- * Si on lève une exception, affichage de l'erreur en question :
- */
- echo '<p>Erreur lors de l\'insertion : '.$e->getMessage().'</p>';
- }
- }
- // Si les variables sont vides, on redirige vers l'index et on passe en param dans l'url le code erreur = 1
- else {
- header('Location: ../backend/index.php?erreur=1');
- }
- ?>
Add Comment
Please, Sign In to add comment