Redirection+message+php
Fermé
maje3
Messages postés
55
Date d'inscription
jeudi 29 janvier 2009
Statut
Membre
Dernière intervention
3 septembre 2010
-
6 oct. 2009 à 11:27
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 - 7 oct. 2009 à 09:59
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 - 7 oct. 2009 à 09:59
A voir également:
- Php redirect with message
- Message - Guide
- Recuperer message whatsapp supprimé - Guide
- Message d'absence thunderbird - Guide
- Messenger impossible de retirer le message ✓ - Forum Facebook Messenger
- Messenger me dit que j'ai un message alors que non - Forum Facebook Messenger
7 réponses
biboo_
Messages postés
1249
Date d'inscription
jeudi 20 août 2009
Statut
Membre
Dernière intervention
14 mars 2012
106
7 oct. 2009 à 09:56
7 oct. 2009 à 09:56
Ce type de code, je l'utilise depuis 3 4 ans sans soucis. :)
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
6 oct. 2009 à 13:23
6 oct. 2009 à 13:23
Re,
Oui pas étonnant que ça apparaisse dans ton url puisque tu l'y passe en paramètre visible (GET)
Comme l'a précisé Biboo_, il te manque dans la page de connexion, une partie où tu récupère cette valeur pour afficher un message à l'utilisateur (la seconde partie du code qu'il t'a donné)
Prend donc exemple dessus et applique le à ton code, ton problème sera résolu.
Oui pas étonnant que ça apparaisse dans ton url puisque tu l'y passe en paramètre visible (GET)
Comme l'a précisé Biboo_, il te manque dans la page de connexion, une partie où tu récupère cette valeur pour afficher un message à l'utilisateur (la seconde partie du code qu'il t'a donné)
Prend donc exemple dessus et applique le à ton code, ton problème sera résolu.
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
6 oct. 2009 à 11:38
6 oct. 2009 à 11:38
Bonjour,
Peux-tu mettre le code de tes deux pages (les parties concernant le problème si les code sont vraiment trop long).
Merci.
Peux-tu mettre le code de tes deux pages (les parties concernant le problème si les code sont vraiment trop long).
Merci.
biboo_
Messages postés
1249
Date d'inscription
jeudi 20 août 2009
Statut
Membre
Dernière intervention
14 mars 2012
106
6 oct. 2009 à 11:45
6 oct. 2009 à 11:45
Sur ta page verifylog.php, en fonction du resultat du login (si échoué ou réussi), tu rediriges vers connexion.php avec un message du type :
verifylog.php :
connexion.php :
verifylog.php :
<?php if(connexionReussi) { // on affiche la page d'accueil } sinon { header('location:connexion.php?msg=1'); } ?>
connexion.php :
<?php if($_GET['msg'] == 1) { echo "erreur 1 car blabla"; } ?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
maje3
Messages postés
55
Date d'inscription
jeudi 29 janvier 2009
Statut
Membre
Dernière intervention
3 septembre 2010
1
6 oct. 2009 à 12:30
6 oct. 2009 à 12:30
voici mon code connexion.php:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
<title>Page de connexion</title>
</head>
<body>
<div id="center" align="center">
<form method="post" name="connexion" action="veriflogmdp.php">
<fieldset>
<legend>Veuillez entrer vos login et mot de passe pour vous connecter...</legend>
<table class="DHTMLSuite_calendar_timeBar">
<tr>
<td width="137" height="59"><label for="firstname">
<div align="right">Login:</div>
</label></td>
<td width="177"><input type="text" id="login" name="login" tooltipText="Veuillez saisir votre login"></td>
</tr>
<tr>
<td height="46"><label for="lastname">
<div align="right">mot de passe:</div>
</label></td>
<td><input type="password" id="password" name="password" tooltipText="Veuillez saisir votre mot de passe"></td>
</tr>
<tr>
<td height="37">
<div align="right">
<input name="Envoyer" type="submit" class="DHTMLSuite_calendarDropDown_dropDownArrowOver" value="Envoyer">
</div></td>
<td>
<div align="left">
<input name="Réinitialiser" type="reset" class="DHTMLSuite_calendar_dropdownAMinuteOver" value="Réinitialiser">
</div></td></tr>
<tr>
<td height="55" colspan="2"><a href="#" onclick="displayMessage('message.html');return false">Mot de passe oublié?</a> </td>
</tr>
</table>
<p><div><?php
if(!isset($_POST['Envoyer'])) {
echo $message;
}
?></div></p>
</fieldset>
<div style="height:15px"></div>
</form>
</body>
</html>
Voici ma page verifylog.php:
<?php
$login= $_POST['login'];
$password = $_POST['password'];
if($login=="" || $password=="")
{
$message="Renseignez votre login et password SVP!";
header("location: connexion.php?message=$message");
}
else
{
$server="*****";
$database="*****";
$dsn="*****";
$username="*****";
$password="****";
$sqlconnect = odbc_connect($dsn, $username, $password);
$sql = "*********** ";
$res = odbc_exec($sqlconnect, $sql) or die ("echec sql");
$login_trouve = false;
while (($verif=odbc_fetch_array($res)) and ($login_trouve == false))
{
if ((strtolower($verif['login_agent']) == $_POST['pseudo']) OR (strtoupper($verif['login_agent']) == $_POST['pseudo'])) // Si Login trouvé
{
$login_trouve=true;
if ($verif['mot_de_passe'] == $_POST['passe'] AND $verif['login_agent'] == $_POST['pseudo']) // Si password correct
{
session_start();
$_SESSION['login'] = $_POST['login'];
$_SESSION['profil'] = $verif['Profil'];
$_SESSION['login_ID'] = $verif['Login_ID'];
$_SESSION['nom'] = $verif['nom_agent'];
$_SESSION['prenom'] = $verif['prenoms_agent'];
$resultat=odbc_fetch_array($res);
$nb_res=odbc_num_rows($res);
if($nb_res == 1)
{
$nom=$resultat['nom_agents'];
$prenoms=$resultat['prenoms_agents'];
$service=$resultat['direction_service'];
$matricule=$resultat['matricule_agents'];
$sq='INSERT INTO pointage values ("","'.$matricule.'","'.$nom.'","'.$prenoms.'","'.$service.
'","'.gmdate("Y-m-d\TH:i:s\Z").'")';
mysql_query ($sq) or die ('cd erreur mysql! '.$sq.'<br/> '.mysql_error());
mysql_close ();
header("location: page2.php");
}
}
else // Password incorrect
{
$message="Login ou Mot de passe incorrect: Vérifiez le profil";
header("Location: connexion.php?message=$message");
}
}
}
}
if ($login_trouve == false) // Si login absent de la BD
{
$message="Login et Mot de passe incorrect: Vérifiez le profil";
header("Location: connexion.php?message=$message");
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
<title>Page de connexion</title>
</head>
<body>
<div id="center" align="center">
<form method="post" name="connexion" action="veriflogmdp.php">
<fieldset>
<legend>Veuillez entrer vos login et mot de passe pour vous connecter...</legend>
<table class="DHTMLSuite_calendar_timeBar">
<tr>
<td width="137" height="59"><label for="firstname">
<div align="right">Login:</div>
</label></td>
<td width="177"><input type="text" id="login" name="login" tooltipText="Veuillez saisir votre login"></td>
</tr>
<tr>
<td height="46"><label for="lastname">
<div align="right">mot de passe:</div>
</label></td>
<td><input type="password" id="password" name="password" tooltipText="Veuillez saisir votre mot de passe"></td>
</tr>
<tr>
<td height="37">
<div align="right">
<input name="Envoyer" type="submit" class="DHTMLSuite_calendarDropDown_dropDownArrowOver" value="Envoyer">
</div></td>
<td>
<div align="left">
<input name="Réinitialiser" type="reset" class="DHTMLSuite_calendar_dropdownAMinuteOver" value="Réinitialiser">
</div></td></tr>
<tr>
<td height="55" colspan="2"><a href="#" onclick="displayMessage('message.html');return false">Mot de passe oublié?</a> </td>
</tr>
</table>
<p><div><?php
if(!isset($_POST['Envoyer'])) {
echo $message;
}
?></div></p>
</fieldset>
<div style="height:15px"></div>
</form>
</body>
</html>
Voici ma page verifylog.php:
<?php
$login= $_POST['login'];
$password = $_POST['password'];
if($login=="" || $password=="")
{
$message="Renseignez votre login et password SVP!";
header("location: connexion.php?message=$message");
}
else
{
$server="*****";
$database="*****";
$dsn="*****";
$username="*****";
$password="****";
$sqlconnect = odbc_connect($dsn, $username, $password);
$sql = "*********** ";
$res = odbc_exec($sqlconnect, $sql) or die ("echec sql");
$login_trouve = false;
while (($verif=odbc_fetch_array($res)) and ($login_trouve == false))
{
if ((strtolower($verif['login_agent']) == $_POST['pseudo']) OR (strtoupper($verif['login_agent']) == $_POST['pseudo'])) // Si Login trouvé
{
$login_trouve=true;
if ($verif['mot_de_passe'] == $_POST['passe'] AND $verif['login_agent'] == $_POST['pseudo']) // Si password correct
{
session_start();
$_SESSION['login'] = $_POST['login'];
$_SESSION['profil'] = $verif['Profil'];
$_SESSION['login_ID'] = $verif['Login_ID'];
$_SESSION['nom'] = $verif['nom_agent'];
$_SESSION['prenom'] = $verif['prenoms_agent'];
$resultat=odbc_fetch_array($res);
$nb_res=odbc_num_rows($res);
if($nb_res == 1)
{
$nom=$resultat['nom_agents'];
$prenoms=$resultat['prenoms_agents'];
$service=$resultat['direction_service'];
$matricule=$resultat['matricule_agents'];
$sq='INSERT INTO pointage values ("","'.$matricule.'","'.$nom.'","'.$prenoms.'","'.$service.
'","'.gmdate("Y-m-d\TH:i:s\Z").'")';
mysql_query ($sq) or die ('cd erreur mysql! '.$sq.'<br/> '.mysql_error());
mysql_close ();
header("location: page2.php");
}
}
else // Password incorrect
{
$message="Login ou Mot de passe incorrect: Vérifiez le profil";
header("Location: connexion.php?message=$message");
}
}
}
}
if ($login_trouve == false) // Si login absent de la BD
{
$message="Login et Mot de passe incorrect: Vérifiez le profil";
header("Location: connexion.php?message=$message");
}
?>
maje3
Messages postés
55
Date d'inscription
jeudi 29 janvier 2009
Statut
Membre
Dernière intervention
3 septembre 2010
1
6 oct. 2009 à 19:59
6 oct. 2009 à 19:59
j'ai essayé le code de biboo mais rien n'y fait. je precise que je n'utilise pas de de paramètre GET.
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
7 oct. 2009 à 09:59
7 oct. 2009 à 09:59
Ceci :
Signifie que tu redirige ta page courante vers la page 'connexion.php' en lui passant un paramètre GET nommé 'message' qui a pour valeur 'message'.
A partir de là, ne soit pas choqué de voir apparaitre ton message dans l'url étant donné que les paramètres GET apparaissent en clair dans cette dernière.
Et si effectivement tu ne fais rien pour récupérer via $_GET ton message dans ta page de connexion pour pouvoir l'afficher, que veux-tu que je te dise ? Ne viens plus poser de question si c'est pour ne pas appliquer les solutions qu'on te donne ?
Bonne chance pour la suite.
header("Location: connexion.php?message=$message");
Signifie que tu redirige ta page courante vers la page 'connexion.php' en lui passant un paramètre GET nommé 'message' qui a pour valeur 'message'.
A partir de là, ne soit pas choqué de voir apparaitre ton message dans l'url étant donné que les paramètres GET apparaissent en clair dans cette dernière.
Et si effectivement tu ne fais rien pour récupérer via $_GET ton message dans ta page de connexion pour pouvoir l'afficher, que veux-tu que je te dise ? Ne viens plus poser de question si c'est pour ne pas appliquer les solutions qu'on te donne ?
Bonne chance pour la suite.