Login/password : PHP PDO MYSQL
Einsvinci
Messages postés
30
Statut
Membre
-
Einsvinci Messages postés 30 Statut Membre -
Einsvinci Messages postés 30 Statut Membre -
Bonjour à tous
D'emblée, je tiens à signaler que je suis débutant en PHP PDO/MYSQL. Je souhaiterais donc avoir votre aide pour faire ceci :
=> créer un système d'authentification (login + mot de passe) très simple pour accéder à une page. Je vous fournis la base de données (membres.sql), le formulaire de connexion (formulairelogin.html), le fichier de connexion à la base de données (connexionbd.php) et la page de destination après connexion réussie (membres.php).
=> Fonctionnement :
1. Lorsqu'on clique sur le bouton CONNEXION du formulaire formulairelogin.html :
a. Si le login et le mot de passe ne concordent pas, affichez juste ce petit message en rouge au-dessus : "Identifiants incorrects".
b. Si le login et le mot de passe concordent, on accède à la page membres.php
=> Les fichiers joints
I. FICHIER DE CONNEXION A LA BASE DE DONNEES : connexionbd.php
<?php
try
{
/* On se connecte à MySQL en renseignant :
- l'adresse du serveur de base de données (Ex : 145.12.15.42),
- le nom de la base de données (Ex : mabase),
- le type d'encodage des caractères (Ex :utf8)
- le username (Ex : moi)
- le mot de passe (Ex : moi001)
$bdd = new PDO('mysql:host=localhost;dbname=authentification; charset=utf8', 'root', '');
}
catch(Exception $e)
{
// En cas d'erreur, on affiche le message ci-dessous et on arrête tout
die('CONNEXION IMPOSSIBLE A LA BASE DE DONNEES ! : '.$e->getMessage());
}
?>
II. LA BASE DE DONNEES : membres.sql
CREATE TABLE IF NOT EXISTS `membres` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Login` varchar(10) NOT NULL,
`Password` varchar(10) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
--
-- Contenu de la table `membres`
--
INSERT INTO `membres` (`id`, `Login`, `Password`) VALUES
(1, 'Roland', 'Rol22');
III. FORMULAIRE DE CONNEXION : formulairelogin.html
<!DOCTYPE html>
<html lang="en">
<head>
<title>Formulaire login</title>
</head>
<body style="font-family:Arial;">
<form action = "membres.php" method = "POST" name = "form" id = "form">
<table width="500" align="center" style="background:#E7F3E2; margin-left:5px; margin-top:20px; margin-right:5px; border: 1px solid #009900;">
<tr>
<td>
<span style="padding-left:5px; font-size:15px; color:#009900; font-family:Arial, Verdana; font-weight:bold;">CONNECTEZ-VOUS</span>
<br/>
<p><label for = "login" style="padding-left:5px; padding-right:5px;">
Login</label><input type = "text" name = "login" id = "login" style="border:1px solid #009900;">
<label for = "pass" style="padding-left:5px; padding-right:0px;">Passe</label>
<input type = "password" name = "pass" id = "pass" style="border:1px solid #009900;">
<input type = "button" value = "Connexion"> </p>
</td>
</tr>
</table>
</form>
</body>
</html>
IV. PAGE DE DESTINATION APRES CONNEXION REUSSIE : membres.php
<!DOCTYPE html>
<html lang="en">
<head>
<title>Membres</title>
</head>
<body style="font-family:Arial; color:#009900; font-weight:bold; font-size:22px;'">
Bienvenue sur la page des membres.
</body>
</html>
Merci pour votre aide.
Roland Einsvinci
D'emblée, je tiens à signaler que je suis débutant en PHP PDO/MYSQL. Je souhaiterais donc avoir votre aide pour faire ceci :
=> créer un système d'authentification (login + mot de passe) très simple pour accéder à une page. Je vous fournis la base de données (membres.sql), le formulaire de connexion (formulairelogin.html), le fichier de connexion à la base de données (connexionbd.php) et la page de destination après connexion réussie (membres.php).
=> Fonctionnement :
1. Lorsqu'on clique sur le bouton CONNEXION du formulaire formulairelogin.html :
a. Si le login et le mot de passe ne concordent pas, affichez juste ce petit message en rouge au-dessus : "Identifiants incorrects".
b. Si le login et le mot de passe concordent, on accède à la page membres.php
=> Les fichiers joints
I. FICHIER DE CONNEXION A LA BASE DE DONNEES : connexionbd.php
<?php
try
{
/* On se connecte à MySQL en renseignant :
- l'adresse du serveur de base de données (Ex : 145.12.15.42),
- le nom de la base de données (Ex : mabase),
- le type d'encodage des caractères (Ex :utf8)
- le username (Ex : moi)
- le mot de passe (Ex : moi001)
- /
$bdd = new PDO('mysql:host=localhost;dbname=authentification; charset=utf8', 'root', '');
}
catch(Exception $e)
{
// En cas d'erreur, on affiche le message ci-dessous et on arrête tout
die('CONNEXION IMPOSSIBLE A LA BASE DE DONNEES ! : '.$e->getMessage());
}
?>
II. LA BASE DE DONNEES : membres.sql
CREATE TABLE IF NOT EXISTS `membres` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Login` varchar(10) NOT NULL,
`Password` varchar(10) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
--
-- Contenu de la table `membres`
--
INSERT INTO `membres` (`id`, `Login`, `Password`) VALUES
(1, 'Roland', 'Rol22');
III. FORMULAIRE DE CONNEXION : formulairelogin.html
<!DOCTYPE html>
<html lang="en">
<head>
<title>Formulaire login</title>
</head>
<body style="font-family:Arial;">
<form action = "membres.php" method = "POST" name = "form" id = "form">
<table width="500" align="center" style="background:#E7F3E2; margin-left:5px; margin-top:20px; margin-right:5px; border: 1px solid #009900;">
<tr>
<td>
<span style="padding-left:5px; font-size:15px; color:#009900; font-family:Arial, Verdana; font-weight:bold;">CONNECTEZ-VOUS</span>
<br/>
<p><label for = "login" style="padding-left:5px; padding-right:5px;">
Login</label><input type = "text" name = "login" id = "login" style="border:1px solid #009900;">
<label for = "pass" style="padding-left:5px; padding-right:0px;">Passe</label>
<input type = "password" name = "pass" id = "pass" style="border:1px solid #009900;">
<input type = "button" value = "Connexion"> </p>
</td>
</tr>
</table>
</form>
</body>
</html>
IV. PAGE DE DESTINATION APRES CONNEXION REUSSIE : membres.php
<!DOCTYPE html>
<html lang="en">
<head>
<title>Membres</title>
</head>
<body style="font-family:Arial; color:#009900; font-weight:bold; font-size:22px;'">
Bienvenue sur la page des membres.
</body>
</html>
Merci pour votre aide.
Roland Einsvinci
1 réponse
-
Salut,
Tu as un tuto bien détaillé juste ici si tu n'es pas trop allergique à l'anglais :
https://www.codingcage.com/2015/04/php-login-and-registration-script-with.html