- Code: Tout sélectionner
<?php
session_start();
//Inclusion du fichier contenant les identifiants de connexion à la base de données.
require("variable.php");
//Connexion à la base de données.
mysql_connect($host, $login, $pass);
mysql_select_db($dtb);
//Si la variable $_POST['connexion'] (bouton submit du formulaire) et la variable $_SESSION['logged'] vaut false (déconnecté) existent.
if (isset($_POST['connexion']) && $_SESSION['connect'] == false)
{
//Vérification des autres variables.
if (isset($_POST['pseudo'],$_POST['pass']) && !empty($_POST['pseudo']) && !empty($_POST['pass']))
{
//Vérification du pseudo.
$pseudo = htmlspecialchars($_POST['pseudo']);
$mot_passe = htmlspecialchars($_POST['mot_passe']);
//Requête comptant le nombre de pseudos $_POST['pseudo']
$sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membre WHERE pseudo='" . $pseudo . "'");
$select = mysql_query("SELECT * FROM membre WHERE pseudo='" . $pseudo . "'");
while ($dodo = mysql_fetch_array($select))
{
if($dodo['bannir'] == 0)
{
//Si le pseudo existe.
if (mysql_result($sql,0,'nb_pseudo') == 1)
{
//Vérification du mot de passe
//Information sur le compte du membre.
$sql_infos = mysql_query("SELECT * FROM membre WHERE pseudo='" . $pseudo . "'");
$donnees = mysql_fetch_array($sql_infos);
//Hashage du mot de passe.
$pass_hash = md5($pass);
//Comparaison du mot de passe.
if ($pass_hash == $donnees['pass'])
{
//On vérifie que le compte est confirmé.
//Si $donnees['confirmation'] vaut 1.
if ($donnees['confirmation'] == 1)
{
if (isset($_POST['souvenir']) && $_POST['souvenir'] == 'on')
{
//Temps d'expiration des cookies (1 an).
$expire = time() + 3600 * 24 * 365;
setcookie('pseudo', $pseudo, $expire);
setcookie('pass', $pass_hash, $expire);
setcookie('log', 'oui', $expire);
}
//Tout est bon, on connecte le membre.
$_SESSION['connect'] = true;
$temps = time();
mysql_query('UPDATE membre SET connected = 1 WHERE pseudo="' . $pseudo . '" ') ;
//Création de 2 variables de session, contenant des informations sur le membre.
$_SESSION['id'] = $donnees['id']; //Id du membre.
$_SESSION['pseudo'] = $pseudo; //Pseudo du membre.
$_SESSION['importance'] = $donnees['importance'];
//Redirection vers la page membre.
header("location: membre.php");
}
else
echo 'Erreur : le compte n\'est pas confirmé !';
}
else
echo 'Erreur : le mot de passe est incorrect !';
}
else
echo 'Erreur : le pseudo n\'existe pas !';
}
else
echo 'Vous avez été banni du jeu!';
}
}
else
echo 'Erreur : veuillez remplir tous les champs !';
}
mysql_close();
session_destroy();
?>
Et à ce moment, je suis rédirigé sur la page membre.php :
- Code: Tout sélectionner
<?
if ($_SESSION['connect'] == true)
{
$_SESSION['connect'] = true;
//démarage de la session et mise à jour des variables
session_start();
$pseudo = $_SESSION['pseudo'];
if (!isset($_SESSION['visiting']))
$_SESSION['visiting'] = false;
//connexion MY_SQL
require ('variable.php');
mysql_connect($host, $login, $pass);
mysql_select_db($dtb);
$_SESSION['connect'] == true;
//compteur de visite
include ('fonction.php');
$connected = compteur_visit();
//construction de la page
include ('header.php');
include ('menu.php');
?>
<div id="body">
Page membre en cours de construction!<br/>
</div>
<?
include ('footer.php');
}
else
header("location: inscription.php");
?>
Et cette derni_re me redirige à son tour vers inscription.php, ce qui veut dire que $_SESSION['connect'] qui valait true sur connxion.php n'exsite plus, ou alors à perdue sa valeur, et c'est la que je me demande pourquoi, vu que le but de cette variable et justement de rester sur toutes les pages égal!!
Si vous voyez une erreur qui expliquerai tous ça, merci d'avance!!





