Création formulaire de connexion
anne so52
Messages postés
23
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
je souhaite créer un formulaire de connexion basique mais sans possibilité d'enregistrement cela se fera manuellement sous demande de mail par l'utilisateur.
J'ai pris exemple sur Internet mais cela ne fonctionne pas...
Fichier connexion.html
Ma table SQL dans ma base de données qui sera remplie manuellement :
Le php de connexion.html, il faut le mettre dans un autre fichier php?
J'ai trouvé comme source de tuto sur OpenClassRooms... Mais je ne comprends pas tout... Faut-il plusieurs fichiers afin de créer mon formulaire de connexion relier à ma base de données... Avez-vous un bon tuto facile à comprendre pour m'aiguiller?
Merci
je souhaite créer un formulaire de connexion basique mais sans possibilité d'enregistrement cela se fera manuellement sous demande de mail par l'utilisateur.
J'ai pris exemple sur Internet mais cela ne fonctionne pas...
Fichier connexion.html
<!DOCTYPE html> <?php include("fonctions.php"); ?> <html> <head> <meta charset="utf-8" /> <link rel="stylesheet" href="style.css" /> <title>Site Internet</title> </head> <body> <div id="bloc_page"> <header> <div id="titre_principal"> <div id="logo"> <img src="images/FNDC_logo.jpg" alt="Logo de FNDC" /> <h1>Bienvenue</h1> </div> </div> <nav> <ul> <li><a href="#" rel="nofollow noopener noreferrer" target="_blank">Accueil</a></li> <li><a href="connexion.html" rel="nofollow noopener noreferrer" target="_blank">Connexion</a></li> <li><a href="#" rel="nofollow noopener noreferrer" target="_blank">Contact</a></li> </ul> </nav> </header><br><br><br><br><br> <?php if (!isset($_POST['pseudo'])) //On est dans la page de formulaire { echo '<form method="post" action="connexion.php"> <fieldset> <legend>Connexion</legend> <p> <label for="pseudo">Pseudo :</label><input name="pseudo" type="text" id="pseudo" /><br /> <label for="password">Mot de Passe :</label><input type="password" name="password" id="password" /> </p> </fieldset> <p><input type="submit" value="Connexion" /></p></form> <a href="./register.php" rel="nofollow noopener noreferrer" target="_blank">Pas encore inscrit ?</a> </div> </body> </html> <?php // Vérification des identifiants $req = $bdd->prepare('SELECT id FROM membres WHERE pseudo = :pseudo AND pass = :pass'); $req->execute(array( 'pseudo' => $pseudo, 'pass' => $pass)); $resultat = $req->fetch(); if (!$resultat) { echo 'Mauvais identifiant ou mot de passe !'; } else { session_start(); $_SESSION['id'] = $resultat['id']; $_SESSION['pseudo'] = $pseudo; echo 'Vous êtes connecté !'; } </div> </body> </html>
Ma table SQL dans ma base de données qui sera remplie manuellement :
CREATE TABLE membres ( id int AUTO_INCREMENT PRIMARY KEY, pseudo varchar (255), pass varchar (255), email varchar (255), date_inscription date )
Le php de connexion.html, il faut le mettre dans un autre fichier php?
J'ai trouvé comme source de tuto sur OpenClassRooms... Mais je ne comprends pas tout... Faut-il plusieurs fichiers afin de créer mon formulaire de connexion relier à ma base de données... Avez-vous un bon tuto facile à comprendre pour m'aiguiller?
Merci
A voir également:
- Formulaire de connexion php pdo
- Whatsapp formulaire opposition - Guide
- Gmail connexion - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Connexion chromecast - Guide
Au niveau de l'affichage pas de soucis...
J'ai ma requête qui s'affiche en dessous : prepare('SELECT id FROM membres WHERE pseudo = :pseudo AND pass = :pass'); $req->execute(array( 'pseudo' => $pseudo, 'pass' => $pass)); $resultat = $req->fetch(); if (!$resultat) { echo 'Mauvais identifiant ou mot de passe !'; } else { session_start(); $_SESSION['id'] = $resultat['id']; $_SESSION['pseudo'] = $pseudo; echo 'Vous êtes connecté !'; }
J'ai oublié quelque chose?
Au passage.....
- Essaye de placer le maximum de ton code php AVANT le code HTML.
- Le Session_start doit être au tout début de ton script (en haut de ta page donc)...
- Met en place la gestion des erreurs PDO : https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Voila j'ai modifier mon code en mettant le maximum de php au dessus... mais toujours la ligne sql qui apparait prepare('SELECT id FROM membres WHERE pseudo = :pseudo AND pass = :pass'); $req->execute(array('pseudo' => $pseudo,'pass' => $pass)); $resultat = $req->fetch(); if (!$resultat) { echo 'Mauvais identifiant ou mot de passe !'; } else { session_start(); $_SESSION['id'] = $resultat['id']; $_SESSION['pseudo'] = $pseudo; echo 'Vous êtes connecté !'; header('location:facebook.php'); exit(); } ?>
cependant je viens de regarde pour la gestion des erreurs des PDO mais je ne comprends pas la système... je suis novice en la matière...
humm.... dis voir .... Tu as quoi comme URL dans ton navigateur ??
Si tu es en "local" sur ton ordi.... as tu bien installé un serveur PHP comme WAMP ou XAMPP ou EASYPHP ??
Et.... pour l'URL .... passes-tu bien par le LOCALHOST ??
Sans ça... le code PHP ne pourra pas être interprété par ton navigateur.
Sans oublier que tu dois nommer tes fichiers en .php