Sessions ... où sont elles ?
Posté : 13 août 2005, 19:05
Bonsoir, j'ai decidé de faire un espace membre pour mon site, script d'inscription reussi, mais avec la connexion ça va pas trop. Le problème c'est quand je crée des sessions, je redirige vers la page de news et comme les sessions sont vides j'ai mis exit . Mais pourtant j'ai fait session_start partout et j'ai bien crée les variables de session. Voici mon code, si vous trouvez où est le problème merci de me le communiquer
Après un formulaire de connexion ... (les post ne sont pas vides)
connexion.php
Après un formulaire de connexion ... (les post ne sont pas vides)
connexion.php
<? session_start;
$_SESSION['pseudo'] = $_POST['pseudo'];
$_SESSION['pass'] = $_POST['pass'];
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Connexion ...</title>
</head>
<body>
<?
if ($_SESSION['pseudo'] == "" OR $_SESSION['pass'] == "")
{ session_destroy; echo "<SCRIPT LANGUAGE=\"JavaScript\"> alert('Entrez des identifiants !');document.location.href=\"index.php\" </SCRIPT>"; }
else
{
mysql_connect("sql.free.fr","xxx","xxx"); //Connexion
mysql_select_db("membres");
$pseudo = $_SESSION['pseudo'];
$sql = mysql_query("SELECT * FROM membres WHERE login='$pseudo'") or die('erreur:' .mysql_error());
$donnees = mysql_fetch_array($sql);
if (strcasecmp($_POST['pass'], $donnees['pass']) == 0) { echo "<SCRIPT LANGUAGE=\"JavaScript\"> document.location.href=\"news.php\" </SCRIPT>"; }
else
{ session_destroy; echo "<SCRIPT LANGUAGE=\"JavaScript\"> alert('Identifiants incorrects !');document.location.href=\"index.php\" </SCRIPT>"; }
mysql_close();
}
?>
</form>
</body>
</html>
news.php
<? session_start; ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<? echo "<title>Connecté en tant que : ".$_SESSION['pseudo']."</title>"; if(!isset($_SESSION['pseudo'])) { exit; } ?>
et tout le reste ...