Gérer la connexion des administrateurs et des ulilisateurs
dodi
-
ThEBiShOp Messages postés 8411 Date d'inscription Statut Contributeur Dernière intervention -
ThEBiShOp Messages postés 8411 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai une base de données "ma_base" dont j'ai deux tables , une des membres et l'autre des administrateurs (je sais si c'est faisable)
mais j'arrive pas à gérer les session et identifier si c'est un admin ou non pour le rediriger à des "home1.html" alors que le membre vers "home2.html" ,voilà le début de mon code , la première partie du connect.php est fausse et il faut que j'ajoute des conditions ou? jai aucune idée :(
<html>
<head>
<title></title>
</head>
<body>
<form method="post" action="connect.php">
<p>Votre pseudo</p>
<input type="text" name="pseudo" placeholder="pseudo" /> <br>
<p>Votre mot de passe</p>
<input type="pass" name="pass" placeholder="Entrez votre mot de passe" /> <br> <br>
<p>email</p>
<input type="submit" name="submit" value="Se connecter">
</form>
</body>
</html>
<?php
$pass_hache = sha1($_POST['pass']);
$req = $bdd->prepare('SELECT id FROM membres WHERE pseudo = :pseudo AND pass = :pass');
$req->execute(array(
'pseudo' => $pseudo,
'pass' => $pass_hache));
$resultat = $req->fetch();
if (!$resultat)
{
echo 'Mauvais identifiant ou mot de passe !';
}
else
{
session_start();
$_SESSION['pseudo'] = $pseudo;
echo 'Vous êtes connecté !';
}
Votre aide s'il vous plait
j'ai une base de données "ma_base" dont j'ai deux tables , une des membres et l'autre des administrateurs (je sais si c'est faisable)
mais j'arrive pas à gérer les session et identifier si c'est un admin ou non pour le rediriger à des "home1.html" alors que le membre vers "home2.html" ,voilà le début de mon code , la première partie du connect.php est fausse et il faut que j'ajoute des conditions ou? jai aucune idée :(
<html>
<head>
<title></title>
</head>
<body>
<form method="post" action="connect.php">
<p>Votre pseudo</p>
<input type="text" name="pseudo" placeholder="pseudo" /> <br>
<p>Votre mot de passe</p>
<input type="pass" name="pass" placeholder="Entrez votre mot de passe" /> <br> <br>
<p>email</p>
<input type="submit" name="submit" value="Se connecter">
</form>
</body>
</html>
<?php
$pass_hache = sha1($_POST['pass']);
$req = $bdd->prepare('SELECT id FROM membres WHERE pseudo = :pseudo AND pass = :pass');
$req->execute(array(
'pseudo' => $pseudo,
'pass' => $pass_hache));
$resultat = $req->fetch();
if (!$resultat)
{
echo 'Mauvais identifiant ou mot de passe !';
}
else
{
session_start();
$_SESSION['pseudo'] = $pseudo;
echo 'Vous êtes connecté !';
}
Votre aide s'il vous plait
A voir également:
- Gérer la connexion des administrateurs et des ulilisateurs
- Gmail connexion - Guide
- Chromecast connexion - Guide
- Site inaccessible n'autorise pas la connexion - Guide
- Gmail connexion autre compte - Guide
- Gerer stockage google - Guide
2 réponses
Salut,
pour faire ce genre de chose, le plus simple est d'avoir une seule table "utilisateurs" dans laquelle tu as un champs "admin" que tu mets à 1 ou 0 suivant ce que tu veux, tu réalises la connexion de tes utilisateurs, et une fois la connexion validée, tu vérifies s'il s'agit d'un admin ou non, et là tu rediriges vers la page de ton choix.
pour faire ce genre de chose, le plus simple est d'avoir une seule table "utilisateurs" dans laquelle tu as un champs "admin" que tu mets à 1 ou 0 suivant ce que tu veux, tu réalises la connexion de tes utilisateurs, et une fois la connexion validée, tu vérifies s'il s'agit d'un admin ou non, et là tu rediriges vers la page de ton choix.
Un truc du genre (en reprenant ton code...)
Je n'ai pas testé, à toi d'adapter.
<html> <head> <title></title> </head> <body> <form method="post" action="connect.php"> <p>Votre pseudo</p> <input type="text" name="pseudo" placeholder="pseudo" /> <br> <p>Votre mot de passe</p> <input type="pass" name="pass" placeholder="Entrez votre mot de passe" /> <br> <br> <p>email</p> <input type="submit" name="submit" value="Se connecter"> </form> </body> </html> <?php $pass_hache = sha1($_POST['pass']); $req = $bdd->prepare('SELECT id, admin FROM membres WHERE pseudo = :pseudo AND pass = :pass'); $req->execute(array( 'pseudo' => $pseudo, 'pass' => $pass_hache)); $resultat = $req->fetch(); if (!$resultat) { echo 'Mauvais identifiant ou mot de passe !'; } else { $_SESSION['pseudo'] = $pseudo; $_SESSION['id'] = $resultat['id']; if ($resultat['admin']) { header('Location: http://chemin.vers.page/admin.php/'); } else { header('Location: http://chemin.vers.page/utilisateur.php/'); } }
Je n'ai pas testé, à toi d'adapter.
et s'il vous plait, pouvez vous me montrer un exemple ?