Prob. de redirection PHP session, login, mdp
Résolu
Utilisateur anonyme
-
informapierre Messages postés 465 Statut Membre -
informapierre Messages postés 465 Statut Membre -
Bonjour et bonne année à tous,
J'ai un petite problème de redirection php avec le header location.
Mon script est très simple, il s'agit de remplir des champs Login et Mot de passe.
Si le mot de passe et le login sont correctes, une session est créée et redirige l'utilisateur vers page_protegee.php.
Si la session n'est pas créée, on ne peut pas avoir accès à cette page.
Mon script fonctionne mais ne redirige pas.
Voici mon script de la page connexion.php
<?php session_start(); ?>
<h2>Connexion</h2>
<form method="POST">
<p>Login : <input name="login" type="text" size="30"/></p>
<p>Mot de passe : <input name="mdp" type="password" size="30"/></p>
<p><input type="submit" name="btn_envoyer" value="Envoyer"></p>
</form>
<?php
if (isset($_POST['btn_envoyer']))
{
$login = $_POST["login"];
$mdp = $_POST["mdp"];
if(($_POST["login"] == 'qq') AND ($_POST["mdp"] == 'ww')){
$_SESSION["login"] = $_POST["login"];
header('Location: page_protegee.php');
}else{
echo'Veuillez vérifier vos identifiants';
}
}
?>
Et le script de page_protegee.php
<?php
session_start();
if(isset($_SESSION['login']))
{ }
else
{
header('Location: connexion.php');
}
?>
<p><a href="deconnexion.php">Déconnexion</a><p>
Merci de bien vouloir m'aider.
spike999
J'ai un petite problème de redirection php avec le header location.
Mon script est très simple, il s'agit de remplir des champs Login et Mot de passe.
Si le mot de passe et le login sont correctes, une session est créée et redirige l'utilisateur vers page_protegee.php.
Si la session n'est pas créée, on ne peut pas avoir accès à cette page.
Mon script fonctionne mais ne redirige pas.
Voici mon script de la page connexion.php
<?php session_start(); ?>
<h2>Connexion</h2>
<form method="POST">
<p>Login : <input name="login" type="text" size="30"/></p>
<p>Mot de passe : <input name="mdp" type="password" size="30"/></p>
<p><input type="submit" name="btn_envoyer" value="Envoyer"></p>
</form>
<?php
if (isset($_POST['btn_envoyer']))
{
$login = $_POST["login"];
$mdp = $_POST["mdp"];
if(($_POST["login"] == 'qq') AND ($_POST["mdp"] == 'ww')){
$_SESSION["login"] = $_POST["login"];
header('Location: page_protegee.php');
}else{
echo'Veuillez vérifier vos identifiants';
}
}
?>
Et le script de page_protegee.php
<?php
session_start();
if(isset($_SESSION['login']))
{ }
else
{
header('Location: connexion.php');
}
?>
<p><a href="deconnexion.php">Déconnexion</a><p>
Merci de bien vouloir m'aider.
spike999
A voir également:
- Prob. de redirection PHP session, login, mdp
- Reinitialiser pc sans mdp - Guide
- Generateur mdp - Télécharger - Sécurité
- Teamviewer code de session expiré ✓ - Forum Windows XP
- On me demande mon login ✓ - Forum Webmastering
- My.canalbox.africa/login - Forum Box et Streaming vidéo
1 réponse
Humm essaie avec sa :
<?php session_start(); ?>
<h2>Connexion</h2>
<form method="post" action="connexion.php">
<p>Login : <input name="login" type="text" size="30"/></p>
<p>Mot de passe : <input name="mdp" type="password" size="30"/></p>
<p><input type="submit" name="btn_envoyer" value="Envoyer"></p>
</form>
<?php
if (isset($_POST['btn_envoyer']))
{
if(($_POST["login"] == 'qq') AND ($_POST["mdp"] == 'ww')){
$_SESSION["login"] = $_POST["login"];
header('Location: page_protegee.php');
}else{
echo'Veuillez vérifier vos identifiants';
}
}
?>
Et le script de page_protegee.php
<?php
session_start();
if(isset($_SESSION['login']))
{ }
else
{
header('Location: connexion.php');
}
?>
dans ton formulaire tu a oublier de préciser à quelle page les information doivent êtres envoyer :/
<?php session_start(); ?>
<h2>Connexion</h2>
<form method="post" action="connexion.php">
<p>Login : <input name="login" type="text" size="30"/></p>
<p>Mot de passe : <input name="mdp" type="password" size="30"/></p>
<p><input type="submit" name="btn_envoyer" value="Envoyer"></p>
</form>
<?php
if (isset($_POST['btn_envoyer']))
{
if(($_POST["login"] == 'qq') AND ($_POST["mdp"] == 'ww')){
$_SESSION["login"] = $_POST["login"];
header('Location: page_protegee.php');
}else{
echo'Veuillez vérifier vos identifiants';
}
}
?>
Et le script de page_protegee.php
<?php
session_start();
if(isset($_SESSION['login']))
{ }
else
{
header('Location: connexion.php');
}
?>
dans ton formulaire tu a oublier de préciser à quelle page les information doivent êtres envoyer :/
Ça ne marche toujours pas.
J'ai oublié de préciser sur le message d'erreur qui est le suivant :
Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\formulaire\connexion.php:11) in C:\xampp\htdocs\formulaire\connexion.php on line 20
Je ne comprends vraiment pas, car il s'agissait d'un code qui fonctionnait il y a 2 ans.
J'ai même essayer de mettre le session_start dans le résultat de la condition mais je rencontre une autre erreur car le session_start doit être placé en tête de page.
Merci de bien vouloir m'aider.
spike999
<h2>Connexion</h2>
<form method="post" action="connexion.php">
<p>Login : <input name="login" type="text" size="30"/></p>
<p>Mot de passe : <input name="mdp" type="password" size="30"/></p>
<p><input type="submit" name="btn_envoyer" value="Envoyer"></p>
</form>
<?php
if (isset($_POST['btn_envoyer']))
{
if(($_POST["login"] == 'qq') AND ($_POST["mdp"] == 'ww')){
$_SESSION["login"] = $_POST["login"];
header("Location: page_protegee.php");
}else{
echo'Veuillez vérifier vos identifiants';
}
}
?>
Et le script de page_protegee.php
<?php
session_start();
if(isset($_SESSION['login']))
{ }
else
{
header("Location: connexion.php");
}
?>
essai toujours avec sa :/
Merci de ton aide ! Si tu ne m'avais pas mis sur la piste j'aurais mis du temps avant de trouver une solution.
Merci encore ! Et bonne année !!