$_SESSION ne marche pas

caperquy Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   -  
caperquy Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous
J'ai une application dans laquelle je recherche toutes les rues dont on m'a donné tout ou partie du nom (variable $nomrue). Comme j'utilise une technique de pagination pour afficher le résultat de ma requête par groupes de 10 lignes il me faut, après l'affichage des 10 premières lignes, relancer la requête en utilisant la même valeur pour la variable $nomrue. Afin de conserver cette valeur je n'ai pas trouvé d'autre solution que d'utiliser la superglobale $_SESSION.
J'ai donc le code suivant :

session_start();
$_SESSION['valrue']=$nomrue;

où $nomrue est le nom (ou partie du nom) de la rue à rechercher dans ma base de données.

Je lance la requête en passant $_SESSION['valrue'] au modèle chargé d'exécuter la requête : tout se passe bien et j'affiche bien le formulaire qui liste les 10 premières réponses. Quand je veux passer aux 10 suivantes je reprends la main dans mon code et je relance la requête précédente en utilisant à nouveau $_SESSION['valrue'] que je pense avoir conservé la même valeur. Cette fois j'obtiens le message suivant :

<h4>A PHP Error was encountered</h4>

<p>Severity: Notice</p>
<p>Message: Undefined variable: _SESSION</p>

Le $ qui précède _SESSION a disparu et il semble que la superglobale ne soit plus reconnue. Quelle peut en être la raison ? Merci d'avance à qui pourra me donner la solution.

PS. Je suis actuellement en environnement local PHP/MySQL

2 réponses

Neliel Messages postés 6146 Date d'inscription   Statut Contributeur Dernière intervention   1 693
 
Bonjour,

Tu charges sur la même page PHP ou sur une autre ? Ne pas oublié de mettre session_start(); au début de toutes tes pages...
0
caperquy Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Un grand merci pour ta réponse. En effet je n'avais mis qu'une seule fois l'instruction session_start(). Maintenant ça marche.
0