Problème avec les sessions

Résolu
progrima Messages postés 125 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 4 janvier 2006 - 9 déc. 2005 à 12:40
progrima Messages postés 125 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 4 janvier 2006 - 9 déc. 2005 à 23:07
Bonjour tout le monde!!
Je veux utiliser les sessions pour garder l'information q'un utilisateur est bien connecté en passant de page en page. Pour cela, j'ai fais un petit programme de test.
La première page affichée est une page qui demande à l'utilisateur son login et son mot de passe. voilà son code:
<html>
<head><title>Test d'authentification </title></head>

<form action="Connection.php" method="post">
Login:

Mot De Passe:


</form>

</html>


Cette page envoie vers "Connection.php" dans laquelle je récupère le login et le mot de passe, et je fais un petit test pour voir est ce que c'est ok. voilà le code:
<?php
$login = $_POST['Login'];
$motDePasse = $_POST['motDePasse'];
echo $login.'+'.$motDePasse; if((strcmp($login,'logintest')) 0 and (strcmp($motDePasse,'motdepassetest') 0))
{
$connecte = 1;
session_register("connecte");
$href='page_Acceuil.php';
session_write_close();
}
else
{
$href='page_Erreur.php';
}
header("Location: $href");
?>


Qd j'entre le login et le mot de passe correctement, il y'a la page 'page_Acceuil.php' qui est affichée.
Dans la page d'acceuil, j'essaye de récupérer la valeur de "connecte" qui est normalement "ok", mais le code m'affiche une chaine vide.
Voilà le code de page_Acceuil.php:
<?php
session_start();
if(session_is_registered("connecte"))
{
$connecte=$_SESSION['connecte'];
echo 'la valeur de connecte est '.$connecte;
}
else
{
echo "variable n'est pas enregistrée dans la session";
}
?>


J'ai comme résulatat :"la valeur de connecte est ".
J'ai ouvert la session et j'ai vérifier si ma variable "session" est bien enregistrée ds la session, mais qd j'essaye de récupérer sa valeur je trouve chaine vide.
Est ce que quelqu'un pourrait m'aider???

2 réponses

FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
9 déc. 2005 à 13:27
echo session_id();

Regarde si c'est le même ID de session qui traverse tes pages.
De plus, dégage session_register(), session_is_registered(); et utilise plutot $_SESSION[] couplé à isset() pour faire des tests de présence !
3
progrima Messages postés 125 Date d'inscription lundi 1 novembre 2004 Statut Membre Dernière intervention 4 janvier 2006
9 déc. 2005 à 23:07
Merci pour ton aide!!
j'ai remplacé session_register() par session_start()+$_SESSION[].
et session_is_registered() par isset() .
0
Rejoignez-nous