Authentification PHP
Sephirus
Messages postés
95
Date d'inscription
Statut
Membre
Dernière intervention
-
avion-f16 Messages postés 19252 Date d'inscription Statut Contributeur Dernière intervention -
avion-f16 Messages postés 19252 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je voudrai faire un script d'authentification.
Le tout pas compliqué car par de BDD il y a qu'un seul USER (admin).
Ma page s'appelle admin.php
Ce que je voudrai faire c'est un page dynamique, si c'est OK il m'affiche la page et son contenu d'administration, si c'est pas bon, qu'il mette un mesasge d'erreur (déjà fait avec le JS) et qu'il renvoie sur la page de login.
Faut-il faire deux pages ou je peux faire qu'une seule page dynamique ?
Voici mon code :
<div id='login'>
<form action="admin.php" method="post">
<label>Login:</label><br />
<input type="text" size="15" name="login"><br />
<br />
<label>Mot de passe:</label><br />
<input type="password" size="15" name="mdp"><br />
<br />
<input type="submit" value="log" id="login">
</form>
</div>
?>
<?php
extract ($_POST);
if ($login!='admin')
echo "
<script language=javascript>
alert('Bad Login')
</script>";
else if ($mdp!='adminelan')
echo "
<script language=javascript>
alert('Bad Password')
</script>";
?>
Je vous remercie d'avance ;)
Je voudrai faire un script d'authentification.
Le tout pas compliqué car par de BDD il y a qu'un seul USER (admin).
Ma page s'appelle admin.php
Ce que je voudrai faire c'est un page dynamique, si c'est OK il m'affiche la page et son contenu d'administration, si c'est pas bon, qu'il mette un mesasge d'erreur (déjà fait avec le JS) et qu'il renvoie sur la page de login.
Faut-il faire deux pages ou je peux faire qu'une seule page dynamique ?
Voici mon code :
<div id='login'>
<form action="admin.php" method="post">
<label>Login:</label><br />
<input type="text" size="15" name="login"><br />
<br />
<label>Mot de passe:</label><br />
<input type="password" size="15" name="mdp"><br />
<br />
<input type="submit" value="log" id="login">
</form>
</div>
?>
<?php
extract ($_POST);
if ($login!='admin')
echo "
<script language=javascript>
alert('Bad Login')
</script>";
else if ($mdp!='adminelan')
echo "
<script language=javascript>
alert('Bad Password')
</script>";
?>
Je vous remercie d'avance ;)
A voir également:
- Authentification PHP
- Double authentification google - Guide
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Désactiver l'authentification à deux facteurs instagram sans se connecter ✓ - Forum Instagram
- Application d'authentification facebook - Guide
5 réponses
Voici un script de base à mettre sur toutes tes pages.
D'abord, ajoutes cette ligne avant tout caractère (avant le DTD, sans aucun espace avant <?php) :
Ensuite, dans ton contenu :
D'abord, ajoutes cette ligne avant tout caractère (avant le DTD, sans aucun espace avant <?php) :
<?php session_start(); ?> <!DOCTYPE html ...
Ensuite, dans ton contenu :
<?php $user = 'admin'; $password = 'adminelan'; if($_SESSION['connected'] === true) { ?> Autorisé <?php } else { $post_user = trim($_POST['user']); $post_password = trim($_POST['password']); if(empty($post_user) || empty($post_password)) { ?> <form method="post" action=""> <p> <label>Login</label> <input type="text" name="user" /> </p> <p> <label>Password</label> <input type="text" name="password" /> </p> <p> <input type="submit" name="Login" /> </p> </form> <?php } else { if($post_user == $user && $post_password == $password) { $_SESSION['connected'] = true; header('Location: '.$_SERVER["REQUEST_URI"]); } else { echo 'Mauvaise combinaison'; } } } ?>
Hum problème pour
Notice: Undefined index: connected in C:\wamp\www\ELAN\admin.php on line 39
Notice: Undefined index: user in C:\wamp\www\ELAN\admin.php on line 42
Notice: Undefined index: password in C:\wamp\www\ELAN\admin.php on line 43
if($_SESSION['connected'] === true) { ?>
$post_user = trim($_POST['user']);
$post_password = trim($_POST['password']);
Je ne vois pas trop ce qu'il faut que je rajoute ...
Notice: Undefined index: connected in C:\wamp\www\ELAN\admin.php on line 39
Notice: Undefined index: user in C:\wamp\www\ELAN\admin.php on line 42
Notice: Undefined index: password in C:\wamp\www\ELAN\admin.php on line 43
if($_SESSION['connected'] === true) { ?>
$post_user = trim($_POST['user']);
$post_password = trim($_POST['password']);
Je ne vois pas trop ce qu'il faut que je rajoute ...
if($_SESSION['user'] === true) { ?>
$post_user = trim($_POST['user']);
$post_password = trim($_POST['password']);
met "user" a la place de "connected", ta fonction trim() n' est pas declarée avant.
$post_user = trim($_POST['user']);
$post_password = trim($_POST['password']);
met "user" a la place de "connected", ta fonction trim() n' est pas declarée avant.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mon code fonctionne correctement, je l'ai même testé avant.
Voici le problème :
Notice: Undefined index: connected in C:\wamp\www\ELAN\admin.php on line 39
C'est assez bien expliqué : la variable $_SESSION['connected'] n'est pas définie.
Je pense que ça pourrait provenir du <?php session_start(); ?> qui tu n'aurais pas mis.
J'ai oublié : tu ne peux rien mettre avant mon script parce que la fonction header qui fait une redirection ne fonctionnera plus. Mets donc tout le code de ta page si l'administrateur est connecté à la place de "Autorisé" (DTD compris) et celui de toute la page avec le formulaire à la place du formulaire que j'ai mis.
Voici le problème :
Notice: Undefined index: connected in C:\wamp\www\ELAN\admin.php on line 39
C'est assez bien expliqué : la variable $_SESSION['connected'] n'est pas définie.
Je pense que ça pourrait provenir du <?php session_start(); ?> qui tu n'aurais pas mis.
J'ai oublié : tu ne peux rien mettre avant mon script parce que la fonction header qui fait une redirection ne fonctionnera plus. Mets donc tout le code de ta page si l'administrateur est connecté à la place de "Autorisé" (DTD compris) et celui de toute la page avec le formulaire à la place du formulaire que j'ai mis.