Comment créer un login pour sa page ?
Résolu
kimi
-
kimi3888 Messages postés 6 Statut Membre -
kimi3888 Messages postés 6 Statut Membre -
Bonjour,
j'ai besoin d'aide, je suis entrain de créer une page web et j'aurais besoin de mettre un login pour y accéder.
Pour l'instant j'ai le codage du login mais j'ai besoin d'aide pour la base de donné, dans l'exemple que j'ai vu ils utilisaient une base de donné externe moi il m'en faut une que je puisse géré, car, quand la page web que je fait sera fini on ne sera que quelque personne a y avoir accès.
j'ai besoin d'aide, je suis entrain de créer une page web et j'aurais besoin de mettre un login pour y accéder.
Pour l'instant j'ai le codage du login mais j'ai besoin d'aide pour la base de donné, dans l'exemple que j'ai vu ils utilisaient une base de donné externe moi il m'en faut une que je puisse géré, car, quand la page web que je fait sera fini on ne sera que quelque personne a y avoir accès.
A voir également:
- Comment créer un login pour sa page ?
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer un lien pour partager des photos - Guide
- Créer un compte gmail - Guide
- Creer un fichier .bat - Guide
4 réponses
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 586
bonjour,
as-tu choisi un langage de programmation?
peux-tu partager ton code?
merci de tenir compte de ceci: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
as-tu choisi un langage de programmation?
peux-tu partager ton code?
merci de tenir compte de ceci: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
oui je les est fait en html, il est en plusieurs fichier le premier (login.php)=>
le deuxième (principale.php)=>
est le css (style1.css) =>
je ne l'ai pas encore modifier mais sa y a pas de soucis je sais faire.
et s'est pour le "verification.php" que j'aurais besoin d'aide
( Est aussi désolée pour l’orthographe la dysorthographie sa aide pas !-! )
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="style1.css" media="screen" type="text/css" />
</head>
<body>
<div id="container">
<form action="verification.php" method="POST">
<h1>Connexion</h1>
<label><b>Nom d'utilisateur</b></label>
<input type="text" placeholder="Entrer le nom d'utilisateur" name="username" required>
<label><b>Mot de passe</b></label>
<input type="password" placeholder="Entrer le mot de passe" name="password" required>
<input type="submit" id='submit' value='LOGIN' >
<?php
if(isset($_GET['erreur'])){
$err = $_GET['erreur'];
if($err==1 || $err==2)
echo "<p style='color:red'>Utilisateur ou mot de passe incorrect</p>";
}
?>
</form>
</div>
</body>
</html>
le deuxième (principale.php)=>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="style1.css" media="screen" type="text/css" />
</head>
<body style='background:#fff;'>
<div id="content">
<?php
session_start();
if($_SESSION['username'] !== ""){
$user = $_SESSION['username'];
echo "Bonjour $user, vous êtes connecté";
}
?>
</div>
</body>
</html>
est le css (style1.css) =>
body{
background: #67BE4B;
}
#container{
width:400px;
margin:0 auto;
margin-top:10%;
}
/* Bordered form */
form {
width:100%;
padding: 30px;
border: 1px solid #f1f1f1;
background: #fff;
box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
}
#container h1{
width: 38%;
margin: 0 auto;
padding-bottom: 10px;
}
/* Full-width inputs */
input[type=text], input[type=password] {
width: 100%;
padding: 12px 20px;
margin: 8px 0;
display: inline-block;
border: 1px solid #ccc;
box-sizing: border-box;
}
/* Set a style for all buttons */
input[type=submit] {
background-color: #53af57;
color: white;
padding: 14px 20px;
margin: 8px 0;
border: none;
cursor: pointer;
width: 100%;
}
input[type=submit]:hover {
background-color: white;
color: #53af57;
border: 1px solid #53af57;
}
je ne l'ai pas encore modifier mais sa y a pas de soucis je sais faire.
et s'est pour le "verification.php" que j'aurais besoin d'aide
( Est aussi désolée pour l’orthographe la dysorthographie sa aide pas !-! )
exacte je vient de mettre les nom correspondant a chaque fichier et voici l'exemple en question =>
login.php
style.css
verification.php
principale.php
login.php
<html>
<head>
<meta charset="utf-8">
<!-- importer le fichier de style -->
<link rel="stylesheet" href="style.css" media="screen" type="text/css" />
</head>
<body>
<div id="container">
<!-- zone de connexion -->
<form action="verification.php" method="POST">
<h1>Connexion</h1>
<label><b>Nom d'utilisateur</b></label>
<input type="text" placeholder="Entrer le nom d'utilisateur" name="username" required>
<label><b>Mot de passe</b></label>
<input type="password" placeholder="Entrer le mot de passe" name="password" required>
<input type="submit" id='submit' value='LOGIN' >
<?php
if(isset($_GET['erreur'])){
$err = $_GET['erreur'];
if($err==1 || $err==2)
echo "<p style='color:red'>Utilisateur ou mot de passe incorrect</p>";
}
?>
</form>
</div>
</body>
</html>
style.css
body{
background: #67BE4B;
}
#container{
width:400px;
margin:0 auto;
margin-top:10%;
}
/* Bordered form */
form {
width:100%;
padding: 30px;
border: 1px solid #f1f1f1;
background: #fff;
box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
}
#container h1{
width: 38%;
margin: 0 auto;
padding-bottom: 10px;
}
/* Full-width inputs */
input[type=text], input[type=password] {
width: 100%;
padding: 12px 20px;
margin: 8px 0;
display: inline-block;
border: 1px solid #ccc;
box-sizing: border-box;
}
/* Set a style for all buttons */
input[type=submit] {
background-color: #53af57;
color: white;
padding: 14px 20px;
margin: 8px 0;
border: none;
cursor: pointer;
width: 100%;
}
input[type=submit]:hover {
background-color: white;
color: #53af57;
border: 1px solid #53af57;
}
verification.php
<?php
session_start();
if(isset($_POST['username']) && isset($_POST['password']))
{
// connexion à la base de données
$db_username = 'root';
$db_password = 'mot_de_passe_bdd';
$db_name = 'nom_bdd';
$db_host = 'localhost';
$db = mysqli_connect($db_host, $db_username, $db_password,$db_name)
or die('could not connect to database');
// on applique les deux fonctions mysqli_real_escape_string et htmlspecialchars
// pour éliminer toute attaque de type injection SQL et XSS
$username = mysqli_real_escape_string($db,htmlspecialchars($_POST['username']));
$password = mysqli_real_escape_string($db,htmlspecialchars($_POST['password']));
if($username !== "" && $password !== "")
{
$requete = "SELECT count(*) FROM utilisateur where
nom_utilisateur = '".$username."' and mot_de_passe = '".$password."' ";
$exec_requete = mysqli_query($db,$requete);
$reponse = mysqli_fetch_array($exec_requete);
$count = $reponse['count(*)'];
if($count!=0) // nom d'utilisateur et mot de passe correctes
{
$_SESSION['username'] = $username;
header('Location: principale.php');
}
else
{
header('Location: login.php?erreur=1'); // utilisateur ou mot de passe incorrect
}
}
else
{
header('Location: login.php?erreur=2'); // utilisateur ou mot de passe vide
}
}
else
{
header('Location: login.php');
}
mysqli_close($db); // fermer la connexion
?>
principale.php
<html>
<head>
<meta charset="utf-8">
<!-- importer le fichier de style -->
<link rel="stylesheet" href="style.css" media="screen" type="text/css" />
</head>
<body style='background:#fff;'>
<div id="content">
<!-- tester si l'utilisateur est connecté -->
<?php
session_start();
if($_SESSION['username'] !== ""){
$user = $_SESSION['username'];
// afficher un message
echo "Bonjour $user, vous êtes connecté";
}
?>
</div>
</body>
</html>
le site fonctionne parfaitement, il n'y a que le login qui ne fonctionne pas car il manque encore le fichier "verification.php" a concevoir
si nécessaire je peu transmettre une partie du code de la page, seule quelques morceaux de texte seront retiré, car mon site a pour bute de répertorier un maximum d'urbex et leur emplacement doive resté au maximume confidentiel d’où l'utilité du login.
si nécessaire je peu transmettre une partie du code de la page, seule quelques morceaux de texte seront retiré, car mon site a pour bute de répertorier un maximum d'urbex et leur emplacement doive resté au maximume confidentiel d’où l'utilité du login.
ton site fonctionne bien, tes pages avec le code php répondent bien?
tu expliques que tu as choisi de travailler sans base de données.
pourquoi? presque partout, si tu peux faire du php, tu peux utiliser une base de données.
si tu n'utilises pas de base de données, où veux tu mémoriser les identifiants et mots de passe?
dans le fichier verification.php?
tu expliques que tu as choisi de travailler sans base de données.
pourquoi? presque partout, si tu peux faire du php, tu peux utiliser une base de données.
si tu n'utilises pas de base de données, où veux tu mémoriser les identifiants et mots de passe?
dans le fichier verification.php?
oui l'idée serai de mémoriser les identifiant dans le fichier verification.php car l'utilisation de base de données ne me permet pas d'avoir l'ensemble des fichier répertorier au même endroit.
je travaille avec site atspace qui eberge mon site et me permet de le codée tous les fichier concernant le site s'y trouve.
un bref aperçu =>

je travaille avec site atspace qui eberge mon site et me permet de le codée tous les fichier concernant le site s'y trouve.
un bref aperçu =>
un exemple de ce que tu peux faire dans verification.php:
<?php
session_start();
if(isset($_POST['username']) && isset($_POST['password']))
{
$username = $_POST['username'];
$password = $_POST['password'];
if($username !== "" && $password !== "")
{
if( ($username == "moi" && $password == "monmdpsecret")
OR ($username == "toi" && $password == "tonmdpsecret")
OR ($username == "lui" && $password == "sonmdpsecret")
)
{ // nom d'utilisateur et mot de passe corrects
$_SESSION['username'] = $username;
header('Location: principale.php');
}
else
{ // utilisateur ou mot de passe incorrect
header('Location: login.php?erreur=1');
}
}
else
{
header('Location: login.php?erreur=2'); // utilisateur ou mot de passe vide
}
}
else
{
header('Location: login.php');
}
?>
sa fonction !! j'ai juste du oublier dans un des fichier de rediriger ver mon site sans doute dans principale.php .
mais je viens de remarquer (une erreur de ma par dans la construction du site) lors de la connexion au site il suffit de retiré /login.php a l'adresse complète pour y accédé sans se connecté.
mais je viens de remarquer (une erreur de ma par dans la construction du site) lors de la connexion au site il suffit de retiré /login.php a l'adresse complète pour y accédé sans se connecté.