Page 1 sur 1

problème dans le script

Posté : 26 mars 2011, 11:42
par fufur
bonjour à tous j'ai un problème au niveau de la déconnexion et je n'arrive pas à trouve l'erreur
voici les codes
index.php
<?php
include('config/verif.php');
?>
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
    	<meta http-equiv="content-type" content="text/html; charset-utf-8" />
        <title>Espace membre</title>
    </head>
    <body>
	<?php
	if($connect = false){
	?>
    	<form id="form1" name="form1" method="post" action="config/connect.php" >
        	<label>
            Login : <input type="text" name="util"  id="util" />
            </label>
            <br />
            <br />
            <label>
            Mot de Passe : <input type="text" name="pass" id="pass" />
            </label>
            <br />
            <br />
            <label>
            <input type="submit" name="button" id="button" value="Me connecter" />
            </label>
        </form>
		<?php
		}elseif($connect = true){
		?>
       Vous etes connecte en tant que membre. Votre login est : <?php $login; ?>
       <br />
	  Vous etes connecte en tant qu administrateur.
       <br />
       <a href="index.php?deconnexion=1">Deconnexion</a>
      <?php
	  }
	  ?>
	  </body>
</html> 
connect.php
<?php
include ('config.php');

if(isset($_SESSION['id'])){
		header("location: ../index.php");
		exit;
	}
	
$connect = false;

if(!empty($_POST['util']) && !empty($_POST['pass'])){
	extract ($_POST);
	$pass = prot($pass);
	$util = mysql_real_escape_string($util);
	
	$sql = "SELECT * FROM compte WHERE login='".$util."'";
	$req = mysql_query($sql) or die ('erreur SQL');
	
	if(mysql_num_rows($req) > 0){
		$rep = mysql_fetch_array($rep);
		if($rep['pass'] == $pass){
			$connect = true;
			$_SESSION['id'] = $rep['id'];
		}
	}
}

if($connect = true){
	header("location:../index.php");
	exit;
}elseif($connect = false){
	header("location:../index.php?err=mdp");
	exit;
}
?>
verif.php
<?php
include ('config.php');

$connect=false;

if(isset($_GET['deconnexion'])){
	$deconnexion = ceil($_GET['deconnexion']);
	if($deconnexion = 1){
		session_destroy();
	}
}
if(!empty($_SESSION['id'])){
$connect = true;
}
?>
config.php
<?php
//début de la connexion à la session ainsi qu'a la base de donnée
session_start();

mysql_connect('localhost','root','');
mysql_select_db ('tuto');
//fin de la connexion à la session ainsi qu'a la base de donnée

//début du cryptage des mots de passes
function prot($pass){
$prefixe = "jhfkjghdqghoiehgoiheriu";
$suffixe = "lzeiurpzeiofoiohfgioezh";
$password = md5($prefixe.$pass.$suffixe);	
return $pass;
}
//fin du cryptage des mots de passes
?>
merci d'avance pour l'aide que vous m'apporterez

Re: problème dans le script

Posté : 26 mars 2011, 11:57
par fufur
personne ne sais?

Re: problème dans le script

Posté : 26 mars 2011, 13:35
par misterflo
Salut,
quel est exactement le problème ?
Un message d'erreur s'affiche ?
La session ne se détruit pas ?

Le code à l'air juste, tu as oublié le double = dans le if($deconnexion == 1) (mais normalement ca ne gêne pas spécialement).

Tu peux essayer de faire un echo session_id(); avant et après le session_destroy() pour voir si la session a bien été détruite.

EDIT : En fait tu ne mets jamais de double = pour vérifier les égalités ^^

Re: problème dans le script

Posté : 29 mars 2011, 11:10
par zeus
Modération :
Le multipostage est interdit sur le forum.

Ce sujet a été verrouillé et sera supprimé sous peu.
Des réponses peuvent être apportées à cette adresse :
php-debutant/probleme-deconnexion-t257985.html

Merci de prendre le temps de lire les règlements.