Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/03/2007, 10h00   #1
Membre à l'essai
 
Inscription : février 2007
Messages : 80
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 80
Points : 24
Points : 24
Par défaut $_SESSION non reconnu

Bonjour, j'ai fait des recherches sur le forum et la FAQ mais comme je n'ai pas trouvé je créé un topic.

Lorsque mon utilisateur se connecte à l'appli j'enregistre son profil
Code :
$_SESSION["profil"]=$profil;
Cela marche nickel et affiche le menu selon le profil. Jusque là tout va bien.
Cependant quand l'utilisateur clique sur un lien du menu, voici ce que ça fait sur la nouvelle page :

Code :
echo "profil :".$_SESSION["profil"];
Code :
Notice: Undefined variable: _SESSION
Je ne comprends pas pourquoi ça ne reconnait pas le tableau superglobal.
Pouvez vous m'aider ?



edit : j'ai vérifié avec phpinfo(), les sessions sont autorisées
Lyna31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 10h11   #2
Rédacteur
 
Avatar de RideKick
 
Homme
Directeur technique
Inscription : septembre 2006
Messages : 5 959
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : septembre 2006
Messages : 5 959
Points : 10 889
Points : 10 889
tu as bien mis session_start() en haut de la 2eme page ?
__________________
Pas de questions techniques en MP please

Mon site perso
RideKick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 10h16   #3
Membre à l'essai
 
Inscription : février 2007
Messages : 80
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 80
Points : 24
Points : 24
J'avais cette erreur en effet merci , mais maintenant au niveau du menu et de la seconde page (après le clic pour aller à la seconde page) j'ai ceci :

Code :
Notice: Undefined index: profil
Pourtant j'ai bien renseigné $_SESSION['profil']. Je ne comprends pas pourquoi.


edit : ça me le fait avec tous les index que j'ai mis dans $_SESSION
Lyna31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 10h25   #4
Rédacteur
 
Avatar de RideKick
 
Homme
Directeur technique
Inscription : septembre 2006
Messages : 5 959
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : septembre 2006
Messages : 5 959
Points : 10 889
Points : 10 889
session_start() doit etre en haut de toutes les pages !
__________________
Pas de questions techniques en MP please

Mon site perso
RideKick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 10h30   #5
Membre à l'essai
 
Inscription : février 2007
Messages : 80
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 80
Points : 24
Points : 24
Oui, j'utilise 3 fichiers :
index.php
home.php
functions.php

J'ai le session_start dans les deux premiers fichiers, pour le troisième ça me dit qu'il n'est pas pris en compte car la session est déjà 'start' (il n'y a que des fonctions dedans, appelées par les deux autres fichiers)

Et ça ne reconnait toujours pas les index de ma session

edit :

debut de ma deuxieme page :
Code :
1
2
3
4
5
session_start();
include('../functions.php'); 
echo "<br>";
print_r($_SESSION);
echo $_SESSION['user'];
résultat :
Code :
1
2
Array ( ) 
Notice: Undefined index: user
Lyna31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 10h51   #6
Rédacteur
 
Avatar de RideKick
 
Homme
Directeur technique
Inscription : septembre 2006
Messages : 5 959
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : septembre 2006
Messages : 5 959
Points : 10 889
Points : 10 889
et ton $_SESSION['user'] est renseigné quelque part ? je peux avoir le code des 3 pages svp ?
__________________
Pas de questions techniques en MP please

Mon site perso
RideKick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 10h59   #7
Membre à l'essai
 
Inscription : février 2007
Messages : 80
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 80
Points : 24
Points : 24
fonction.php:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function menu() {
	print_r($_SESSION);
    ?>
    <table width='200'  border='0' cellspacing='10' cellpadding='0'>      
 
	    <tr><td height=50>&nbsp;</td></tr>
	    <tr><td><a href='<?echo $_SESSION['server'];?>load/load.php' title='Coverage hours'>Load from Fusion and Magic</a></td></tr>
	    <?
		if ($_SESSION['profil'] == 'ADM' || $_SESSION['profil'] == 'SL'){
			?>
	        <tr><td><a href='<?echo $_SESSION['server'];?>domain/domains.php' title='Domains'>Domains</a></td></tr>
	        <?
    	}
    	?>
	    <tr><td><a href='<?echo $_SESSION['server'];?>coverageHours/coverageHours.php' title='Coverage hours'>Coverage hours</a></td></tr>
	    <tr><td><a href='<?echo $_SESSION['server'];?>slatimes/slatimes.php' title='SLA times'>SLA times</a></td></tr>
	    <tr><td><a href='<?echo $_SESSION['server'];?>statistics/statistics.php' title='statistics'>Statistics</a></td></tr>
	    <tr><td><a href='<?echo $_SESSION['server'];?>deconnection.php' title='Deconnection'>Deconnection</a></td></tr>
	    <tr><td>&nbsp;</td></tr>
 
    </table>
 
    <?
}



load.php (autre fichier que j'avais oublié dans le post précédent) :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
 
session_start();
include('../functions.php'); 
echo "<br>";
print_r($_SESSION);
echo $_SESSION['user'];
if (!isset($_SESSION['profil'])){
	echo "<br>pas de profil";
}else{
echo "profil :".$_SESSION['profil'];
}
?>
Je ne met pas l'index, c'est juste l'appel à la fonction menu()


Et le souci intervient donc au niveau du premier clic sur le menu.
Lyna31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 11h03   #8
Membre à l'essai
 
Inscription : février 2007
Messages : 80
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 80
Points : 24
Points : 24
Ah en fait ça marche si j'enleve
Code :
<?echo $_SESSION['server'];?>
dans chaque ligne de liens dans le menu... sais tu pourquoi ?
Lyna31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 11h22   #9
Membre chevronné
 
Inscription : juin 2005
Messages : 572
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France, Haute Vienne (Limousin)

Informations forums :
Inscription : juin 2005
Messages : 572
Points : 690
Points : 690
Je ne vois à aucun moment $_SESSION['server'] de renseignée.
L'est elle dans une autre page ?
ratapapa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 11h25   #10
Membre à l'essai
 
Inscription : février 2007
Messages : 80
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 80
Points : 24
Points : 24
Non, j'avais repris le code qu'on m'avait passé (d'une appli similaire) mais en quoi cela avait "vidé" $_SESSION ?
Lyna31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 11h30   #11
Membre chevronné
 
Inscription : juin 2005
Messages : 572
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France, Haute Vienne (Limousin)

Informations forums :
Inscription : juin 2005
Messages : 572
Points : 690
Points : 690
Si cette variable n'est pas renseignée elle sera vide par défaut me semble t'il.
En moins qu'elle ne soit automatiquement créée, auquelle cas je ne la connais pas.
A confirmer.
ratapapa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 11h34   #12
Membre à l'essai
 
Inscription : février 2007
Messages : 80
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 80
Points : 24
Points : 24
Là n'est pas le souci
Le souci était que cette ligne vidait $_SESSION entièrement. les index 'profil' et 'user' n'existaient même plus. Je trouve ça étrange...
Lyna31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 11h40   #13
Rédacteur
 
Avatar de RideKick
 
Homme
Directeur technique
Inscription : septembre 2006
Messages : 5 959
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Directeur technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : septembre 2006
Messages : 5 959
Points : 10 889
Points : 10 889
Remarque au passage dans index.php il fallait session_statr() au debut ... j'espere qu il y etait ça aurait pu venir d ici ausssi !

Resolu ?
__________________
Pas de questions techniques en MP please

Mon site perso
RideKick est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/03/2007, 11h41   #14
Membre à l'essai
 
Inscription : février 2007
Messages : 80
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 80
Points : 24
Points : 24
RideKick >> oui il y était. Merci beaucoup en tout cas !
Résolu ^^
Lyna31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h55.


 
 
 
 
Partenaires

Hébergement Web