Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
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 07/04/2011, 20h49   #1
Débutant
 
Inscription : juin 2006
Messages : 502
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 502
Points : 44
Points : 44
Par défaut Problème avec mes variables de session

Bonjour à tous,

J'ai réalisé un site web dans lequel il y a une partie invité. Pour cette partie j'ai créé des variables de sessions. Mais le problème lorsque j'appelle mes variables de sessions elles sont vide.
Je m'explique j'ai deux pages dans la page d'accueil de cette partie j'affiche le nom et le prénom de la personne qui s'est connecté. Au début ces variables s'affichaient maintenant elles ne s'affichent plus.


Dans une autre page je vais chercher dans la BDD l'id de la personne qui s'est connecté grace aux variables de sessions. Et encore une fois ça ne fonctionne pas alors qu'au début ça fonctionnais.

Le code des créations de variables de sessions :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
			$req= mysql_query('SELECT * FROM maTable WHERE identifiant="'.$login.'" AND motPasse="'.$mdp.'"');
 
			if(mysql_num_rows($req)!=0) {
 
				SESSION_register('connecte');
				SESSION_register('nom');
				SESSION_register('prenom');
 
				$row = mysql_fetch_array($result);
 
				$_SESSION['connecte'] = 'O';
				$_SESSION['nom'] = $row['NOM'];
			       $_SESSION['prenom'] = $row['PRENOM'];
 
			}
Le code de la page d'accueil :
Code :
1
2
 
echo '<p> Bienvenue  '.$_SESSION['prenom'].'  '.$_SESSION['nom'].'</p>';
Le code qui permet de récupérer l'id de la personne qui s'est connecté.
Code :
1
2
3
4
 
	 $requete =mysql_query('SELECT ID FROM maTableWHERE NOM ="'.$_SESSION['nom'].'" AND PRENOM="'.$_SESSION['prenom'].'"');
			 $ligne=mysql_fetch_array($requete );
			 $id = $ligne['ID];
Merci d'avance pour votre aide
mademoizel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 20h53   #2
Membre Expert
 
Inscription : septembre 2010
Messages : 1 242
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 1 242
Points : 1 564
Points : 1 564
Faut mettre session_start(); dans toutes les pages qui utilisent des variables de session (avant de les déclarer ou de les utiliser).

Code :
1
2
3
session_start();
 
//suite du code
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 20h53   #3
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
session_register() ne sert plus à rien.

demarres-tu bien ta session avec session_start() sur les pages concernées ?
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 21h02   #4
Débutant
 
Inscription : juin 2006
Messages : 502
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 502
Points : 44
Points : 44
Oui toutes mes pages commence par
session_start();
session_name('SESSION_INVITE');
mademoizel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 21h47   #5
Débutant
 
Inscription : juin 2006
Messages : 502
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 502
Points : 44
Points : 44
Je viens de constater que les variables de sessions se supprimais lorsque je cliquer sur un lien : ce lien m'emmène vers une page qui appartient à la partie invité et dans cette page il y a bien les session_start(); session_name('SESSION_INVITE');
mademoizel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 21h49   #6
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Est-ce que cette page est dans le meme domaine / sous-domaine ?
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 22h00   #7
Débutant
 
Inscription : juin 2006
Messages : 502
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 502
Points : 44
Points : 44
Cette page se trouve dans le même dossier que les autres pages. Je ne comprends pas pourquoi ça me fait ça
mademoizel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 22h40   #8
Expert Confirmé
 
Avatar de RunCodePhp
 
Inscription : janvier 2010
Messages : 2 709
Détails du profil
Informations personnelles :
Localisation : Réunion

Informations forums :
Inscription : janvier 2010
Messages : 2 709
Points : 3 279
Points : 3 279
Salut

Essai comme ceci :
Code :
1
2
session_name('SESSION_INVITE');
session_start();
Il est dit au niveau de la doc : session_start()
Citation:
Pour utiliser une session nommée, vous devez appeler session_name() avant d'appeler session_start().
__________________
Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]
RunCodePhp est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h20.


 
 
 
 
Partenaires

Hébergement Web