Valider connexion de l'utilisateur en php
Petite question... j'ai ma page de connexion fonctionne maintenant de sorte que lorsque l'utilisateur entre les informations correctes, il va les rediriger vers la page d'accueil dans une session. Quand ils entrent des informations erronées il vient de le rediriger vers la page de connexion.
Ce que je suis en train de faire, quand ils le type de la mauvaise information, je veux qu'il à toujours rediriger vers la page de connexion mais j'ai envie de dire non valide de connexion, s'il vous plaît essayer de nouveau. J'ai essayé d'écho, mais il vient de rafraîchissement de la page aucun écho sur elle..
Page de connexion
<?php include '../../view/header.php'; ?>
<div id="main">
<?php
//Inialize session
session_start();
//Check, if user is already login, then jump to secured page
if (isset($_SESSION['username'])) {
header('Location: ../../admin');
}
?>
<html>
<head>
<title>Login</title>
</head>
<body>
<h3>Admin Login</h3>
<table>
<form method="POST" action="loginproc.php">
<tr><td>Username</td><td>:</td><td><input type="text" name="username" size="20"></td></tr>
<tr><td>Password</td><td>:</td><td><input type="password" name="password" size="20"></td></tr>
<tr><td> </td><td> </td><td><input type="submit" value="Login"></td></tr>
</form>
</table>
</body>
</html>
</div>
<?php include '../../view/footer.php'; ?>
loginproc.php
<?php
//Inialize session
session_start();
//Include database connection settings
require_once('database.php');
//Retrieve username and password from database according to user's input
$login = mysql_query("SELECT * FROM user WHERE (username = '" . mysql_real_escape_string($_POST['username']) . "') and (password = '" . mysql_real_escape_string($_POST['password']) . "')");
//Check username and password match
if (mysql_num_rows($login) == 1) {
//Set username session variable
$_SESSION['username'] = $_POST['username'];
//Jump to secured page
header('Location: ../../admin');
}
else {
//Jump to login page
header('Location: index.php');
}
?>
- Vous pouvez ajouter OBTENIR params dans le rediriger:
header('location: url/page?loginfail=1');
- Être conscient des séances peuvent facilement être détournés si vous n'ajoutez pas plus de sécurité pour eux (comme le contrôle de retour de la session IP vs REMOTE_ADDR, etc.
- Cette question reçoit demandé à plusieurs reprises chaque semaine. Vous trouverez certainement des réponses, si vous recherchez les questions précédentes sur ce sujet.
Vous devez vous connecter pour publier un commentaire.
loginproc.php
Vous ne devriez pas utiliser toute sortie avant la redirection. Ça peut fonctionner, mais Il peut également imprimer sans erreur de redirection.
Comme pour rediriger et de sortie. Vous pouvez stocker des informations à
SESSION
, faire de redirection et ensuite, imprimez erreur selonSESSION
. Si votre rapport d'erreur est seulement quelque chose de simple, vous pouvez utiliserGET
et le passer dans les parametr via la page de redirection.