bonjour, j'ai été amené à faire un système de membre et donc de connection pour mon site, le problème est qu'il ne marche pas sous IE, et j'ai beau tout tester
voici mon script de login classic :
et ensuite le script de connexion :
Sous mozilla impécable, sous IE, si j'echo le pseudo il le reconnait bien dans le script connexion, il me met connexion réussit mais quand il refresh, les champs de login sont tjs là
!! j'ai essayé de virer le refresh, de changer les if et autre, mais aucun changement!!
Quelqu'un aurait une idée pour m'aider merci!!
Modifié par eMeRiKa (15 Jun 2006 - 17:36)

voici mon script de login classic :
<?php // on vérifie que la variable $_SESSION['logged'] existe et vaut bien true.
if (isset($_SESSION['logged']) && $_SESSION['logged'] == true)
{
//Ensuite on vérifie que le membre est un admin
$retour = mysql_query('SELECT * FROM membres WHERE id =' . $_SESSION['id']);
$donnees = mysql_fetch_array($retour);
if ($donnees['admin'] == 1)
{
blablabla
}
elseif ($donnees['admin'] == 0)
{
blablabla
}
}
else
{?>
<div id="log0">
<form method="post" action="connexion.php">
<div id="log1">
<img id="login1" src="images/login/login1.jpg" alt="login/pass"/>
<input class="f_space" type="text" name="pseudo" maxlength="30" />
</div>
<div id="log2">
<img id="login2" src="images/login/login2.jpg" alt="login/pass"/>
<input class="f_space" type="password" name="mot_passe" maxlength="30" />
</div>
<a href="inscrire.php"><img src="images/login/signin.jpg" alt="sign in" /></a>
<input class="b_go" type="image" src="images/login/go.jpg" name="connexion" value="connexion" />
</form>
</div>
<?php
}
?>
et ensuite le script de connexion :
<?php //Ne pas oublier de mettre le session_start()
session_start(); ?>
//Si la variable $_SESSION['logged'] n'existe pas, on la créée.
if (!isset($_SESSION['logged'])) $_SESSION['logged'] = false;
echo'<p> Connection en cours ! </p>';
//Ensuite on vérifie que les variables existent et contiennent quelque chose [smile]
if (isset($_POST['pseudo'], $_POST['mot_passe']) && !empty($_POST['pseudo']) && !empty($_POST['mot_passe']))
{
//Mesure de sécurité, notamment pour éviter les injections sql.
$pseudo = htmlentities(addslashes($_POST['pseudo']));
$mot_passe = htmlentities(addslashes($_POST['mot_passe']));
//Hashage du mot de passe.
$mot_passe = md5($mot_passe);
//La requête qui compte le nombre de pseudos
$sql = mysql_query("SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo='".$pseudo."'");
//La on regarde que le nombre est différent que zéro
if (mysql_result($sql,0,'nb_pseudo') != 0)
{
//Sélection des informations.
$sql_info = mysql_query("SELECT id, pass FROM membres WHERE pseudo='".$pseudo."'");
$donnees_info = mysql_fetch_array($sql_info);
//Si le mot de passe est le même.
if ($donnees_info['pass'] == $mot_passe)
{
//On modifie la variable qui nous indique que le membre est connecté.
$_SESSION['logged'] = true;
//On créé les variables contenant des informations sur le membre.
$id = $donnees_info['id'];
$_SESSION['id'] = $id;
$pseudo = htmlentities(addslashes($_POST['pseudo']));
$_SESSION['pseudo'] = $pseudo;
?>
<head>
<meta http-equiv="refresh" content="1; url=index.php" />
</head>
<?php
}
else
{
echo '<p>Le password est incorrect !</p>';
}
}
else
{
echo '<p>Le pseudo n\'existe pas !</p>';
}
}
else
{
echo '<p>Veuillez remplir les champs !</p>';
}
?>
Sous mozilla impécable, sous IE, si j'echo le pseudo il le reconnait bien dans le script connexion, il me met connexion réussit mais quand il refresh, les champs de login sont tjs là

Quelqu'un aurait une idée pour m'aider merci!!
Modifié par eMeRiKa (15 Jun 2006 - 17:36)