Problème avec les sessions [Résolu]

Signaler
Messages postés
125
Date d'inscription
lundi 1 novembre 2004
Statut
Membre
Dernière intervention
4 janvier 2006
-
Messages postés
125
Date d'inscription
lundi 1 novembre 2004
Statut
Membre
Dernière intervention
4 janvier 2006
-
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

Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
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 !
Messages postés
125
Date d'inscription
lundi 1 novembre 2004
Statut
Membre
Dernière intervention
4 janvier 2006

Merci pour ton aide!!
j'ai remplacé session_register() par session_start()+$_SESSION[].
et session_is_registered() par isset() .