Aide pour me connecter à une application PHP
Bonsoir. Je fais en ce moment un petit projet de connexion et d'inscription à une base de données. Je vous explique, j'ai une base de données sous MySQL appelé "projetetude" ou il y a deux tables "formateur" et "utilisateur".
Dans la table "formateur", il n'y a rien encore mais par contre dans la table "utilisateur" il y a deux colonnes : "email" et "motpasse". Et dans cette table il y a un enregistrement que voici : pour l'email c'est : "admin@gmail.com" et le motpasse c'est : "test".
L'objectif c'est qu'avec ces deux identifiants je puisse basculer sur un back-office en cliquant sur le bouton "Envoyer". Voici vueconnexion.php, la vue de connexion fait avec Foundation le framework d'interface :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| <?php
//session_start();
include_once "controller/utilisateurConnexion.php";
?>
<!DOCTYPE html>
<html>
<meta charset="UTF-8">
<head>
<title>Mes formulaires d'étude</title>
<link rel="stylesheet" href="style/css/foundation.min.css">
<link rel="stylesheet" href="style/css/foundation.css">
<link rel="stylesheet" href="style/css/app.css">
<script src="js/vendor/foundation.js"></script>
<script src="js/vendor/foundation.min.js"></script>
<script src="js/vendor/jquery.js"></script>
<script src="js/vendor/what-input.js"></script>
</head>
<body>
<h1>Mon formulaire de connexion d'étude</h1>
<form action="controller/utilisateurConnexion.php" method="POST">
<label for="email">
<p>Email <input id="email" type="email" placeholder="email@email.com"/>
</label></p>
<label for="motpasse">
<p>Mot de passe <input id="motpasse" type="password"/>
</label></p>
<a button type="submit" class="button large-1" name ="Envoyer"/>Envoyer</a>
</form>
<a href="vueinscription.php" class="button large-1 hollow" input type="submit"/>Pas inscrit, inscrivez-vous</a>
<a href="vueoubli.php" class="button large-2 hollow" input type="submit"/>Identifiant oublié</a>
</body>
</html> |
Il y aussi le modèle me permettant de me connecter à ma base appelé accesbase.php situé dans le répertoire "modele" :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| <?php
class accesbase
{
function connexion()
{
$pdo = null;
try {
$pdo = new pdo ('mysql:host=127.0.0.1;dbname=projetetude', 'root', '', array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET_NAMES_utf8"));
} catch (PDOException $err) {
$messageErreur = $err->getMessage();
error_log($messageErreur, 0);
}
return $pdo;
}
function uConnexion($email, $motpasse)
{
$pdo = $this->connexion();
if ($pdo != false) {
$sql = "SELECT * FROM utilisateur" . "where email=:email and motpasse=:motpasse";
$prep = $pdo->prepare($sql);
$prep = bindParam(":email", $email, PDO::PARAM_STR);
$prep = bindParam(":motpasse", $motpasse, PDO::PARAM_STR);
$prep = $pdo->execute();
$resultat = $prep->fetch();
if ($prep->rowCount() == 1) {
$prep->closeCursor();
return $resultat;
}
$prep->closeCursor();
}
return null;
}
function uNouveau($email, $motpasse)
{
$pdo = $this->connexion();
if ($pdo == null) {
return false;
}
$register = $pdo->prepare('INSERT INTO utilisateur(email,motpasse)VALUES (:email,:motpasse)');
$register->bindValue(':email', $email, PDO::PARAM_STR);
$register->bindValue(':motpasse', $motpasse, PDO::PARAM_STR);
return ($register->execute());
}
}
;
?> |
Et voici le petit fichier controlleur appelé utlisateurConnexion.php qui fait le traitement, il est situé dans le répertoire "controller":
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <?php
include_once 'modele/accesbase.php';
$db = new accesbase();
$pdo = $db->connexion();
if($pdo!=false) {
header('location:vueSIO.php');
}
else {
//header('location:vueconnexionerrone.php');
}
?> |
Le but c'est qu'en entrant dans le champ email l'émail "admin@admin.com" et dans le champ mot de passe "test" et cliquant sur le bouton "envoyer", je puisse basculer sur la vueSIO.php. Or pour l'instant, cela ne marche pas. J'attends votre contribution.