Bonjour,
QQun pourrais me dire pourquoi mon lien de déconnexion ne fait absolument rien?
voici la page
membres.php . Si aucune session est ouverte un formulaire est affiché sinon on affiche : Vous êtes bien logué (nom d'utilisateur). avec un lien vers la page Deconnexion.php (voir plus bas)
<?php
session_start();
$loginOK = false;
$errorMessage = '';
$db = mysql_connect('localhost', 'MESINFOS', 'MESINFOS');
mysql_select_db('db_website',$db);
// Test de l'envoi du formulaire
if($_POST)
{
// Les identifiants sont transmis ?
if(!empty($_POST['login']) && !empty($_POST['pass']))
{
$sql = "select PASSWORD, NOM, SEXE, PRENOM, PLEVEL from table_utilisateurs where EMAIL='".$_POST['login']."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req);
// On vérifie que l'utilisateur existe bien.
if (mysql_num_rows($req) > 0)
{
if ($_POST['pass'] == $data['PASSWORD'])
{
$loginOK = true;
}
else
{
$loginOK = false;
$errorMessage = 'Mauvais login / password.';
}
}
else
{
$loginOK = false;
$errorMessage = 'Compte introuvable.';
}
}
else
{
$loginOK = false;
$errorMessage = 'Un champ est rester vide.';
}
}
else
{
$loginOK = false;
$errorMessage = '';
}
if ($loginOK)
{
$_SESSION['login'] = $_POST['login'];
$_SESSION['sexe'] = $data['SEXE'];
$_SESSION['nom'] = $data['NOM'];
$_SESSION['prenom'] = $data['PRENOM'];
$_SESSION['plevel'] = $data['PLEVEL'];
//$url = "membres.php?".session_name()."=".session_id();
//header("Location: $url");
header('Location: membres.php');
exit();
}
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<body>
<?php
if(!isset($_SESSION["login"]))
{
echo '<p><form action="membres.php" method=\'post\'>
<p align="center" class="style3">Cette section est réservé exclusivement aux membres du site web.<br></p>
<p align="center" class="style3"> </p>
<p align="center" class="style3">'.$errorMessage.' Merci de recommencer.ll ', $_SESSION['login'] ,'</p>
<p align="center" class="style3"> </p>
<p align="center" class="style1">Entrer vos informations</p>
<table width="214" border="0" align="center">
<tr>
<td rowspan="2" class="style2"><img src="img/accueuil/cadena.gif" width="47" height="44"></td>
<td height="24" class="style2">Login</td>
<td><input type="text" name="login" maxlength="250"></td>
</tr>
<tr>
<td height="24" class="style2">Password</td>
<td><input type="password"name="pass" maxlength="10"></td>
</tr>
<tr>
<td height="26" colspan="3" align="center"><div align="right">
<input type="submit" value="Entrer"></div>
</td>
</tr>
</table>
<p align="center"><a href="signup.html">S\'inscrire</a></p>
</form></p>';
}
else
{
echo 'Vous êtes bien logué ',$_SESSION['login'],' ',$_SESSION['nom'];
}
?>
<a href="deconnexion.php" title="Déconnexion" class="style2">Se déconnecter</a></p>
</body>
</html>
contenu de
Deconnexion.php
<?php
session_start();
$_SESSION = array();
session_destroy();
header('Location: membres.php')
?>
Comme vous pouvez voir le script a l'interieur de Deconnexion.php renvoie a la page membres.php apres avoir "détruit" la session. Donc membres.php devrait revenir au formulaire de login mais le probleme c'est qu'il affiche tjrs : Vous êtes bien logué...
Le seul moyen de "resetter" la page membres.php (pour le moment) est de supprimer les fichiers tempo manuellement.
Qqun aurait une idée??????
MERCI
Afficher la suite