[php] Déconnexion espace membre avec sessions

Bonjour à tous, je n'arrive pas à me deconecter de ma session. Je m'explique :
l'utilisateur rentre sur cette page ses id et mdp :

<?php 
	session_start(); // initialisation de la variable session 
	echo('<?xml version="1.0" encoding="iso-8859-1"?>'); 
?>

<!DOCTYPE html 
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
	
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
	<title>Bienvenue sur oya-location.com</title>
	<meta http-equiv="Content-Type" content="text/html ; charset=iso-8859-1" />
	<link rel="stylesheet" media="screen" type="text/css" title="Design" href="styles/design.css" />
</head>

<body>

	<?php include("menu.php") ?>
	
	<div id="content" >
	
		<div id="contents">
	
		<?php
			if ((isset($_SESSION['password'])) AND (isset($_SESSION['email'] ))) //on teste si membre déjà connecté
			{
		?> <!-- Espace personnalisé pour modifier ses locations -->
		
		<div id="donnees">
		
		
		</div>
		
		<?php
		
			}
			else // si le membre n'est pas conect, on affiche les boites email password
			{
		?>
		<div id="password">
		
			<br/>
			<table>
			<form method="post" action="membres.php">
				<tr>	
					<td rowspan="2">E-Mail : </td>
				</tr>
				<tr>	
					<td><input type="text" name="email" size="15" maxlength="30" class="text"/></td>
				</tr>  
				<tr>	
					<td rowspan="2">Mot de passe : </td>
				</tr>  
				<tr>	
					<td><input type="password" name="password" size="15" maxlength="12" class="text"/> </td>
				</tr>
				<tr>	
					<td colspan="2"></td>
				</tr>  		
				<tr>	
					<td> 
						<input type="submit" value="S'identifier"  class="boutton"/> 
					</td>
					<td>
						<input type="reset" value="Annuler" class="boutton"/> 
					</td>
				</tr> 
			</form>
			</table>
				<br/>
				
				<a href="inscription.php">Pas encore inscrit ?</a>  | 
				<a href="password.lost.php">Mot de passe perdu ?</a>

			<div id="avantages">
			
				<div class="img-center">
					<b>Pourquoi s'inscrire sur Oya-Location ?</b>
				</div>
			
					<ul>
						<li> Offres promotionnelles réguliéres pour les annonceurs </li> <br></br>
						<li> Pas d'intermédiaires : de particuliers à particuliers </li>  <br></br>
						<li> Un site simple, facile d'accés  </li>  <br></br>
						<li> Présentation attractive des locations </li> <br></br>
						<li> Gestion des annonces en temps réel </li> <br></br>
					</ul>
					
			</div> <!-- fin de avantages -->
			
		</div> <!-- fin de password -->
		
		<div id="separateur-id"></div>
			
		<?php 
			} //on ferme le "else"
		?>

	</div> 

</div>
	<?php include("copyright.php") ?>

</body>

</html>


Ensuite, une fois la vérif faite sur la bdd, il m'affiche un lien "se déconecter" qui se redirige vers ça :

<?php

unset($_SESSION);
unset($_COOKIE);
session_destroy();

?>

<html>
<head>

<title>Oya-Location : redirection</title>

<meta http-equiv="refresh" content="1; URL=http://www.oya-location.com">
</head>

<body>

Déconnexion en cours ...
</body>

</html> 


Mais quand je retourne sur "Espace membre", je suis toujours connecté ... Est ce que quelq'un sait pourquoi ?
Merci de votre aide !
Configuration: Windows XP
Firefox 2.0.0.11

3 réponses

  1. enleve ca
    unset($_SESSION);
    unset($_COOKIE);

    pour commencer...

    Si tu veux virer les variables du cookie re-envoie un cookie met avec un temps de validité de -1.

    Après ton code me parait correct j'ai pas vérifier la page de login mais que la page de logout pouisque l'erreur ne peut venir que de là !
    1. merci mais c'est ce que j'avais mis avant juste session destroy, mais les sessions ne se vident pas. J'ai essayé de réaffecter, rien à faire. J'ai même tenter avec firefox "effeacer mes traces" .... non plus. je comprends pas ...
      1. bon j'ai reussi à me déconecter en enlevant les cookies et cache de firefox ... mais je comprends toujours pas pourquoi session destroy ne fonctionne pas.
        1. Il faudra rajouter cette ligne en début de ton script de logout

          if ($PHPSESSID) {session_start( $PHPSESSID );} else {session_start();}