Variables de sessions Serveur/Client

Variables de sessions Serveur/Client - PHP - Programmation

Marsh Posté le 16-07-2003 à 17:01:22    

Jai un probleme un peu bizzare avec mes variables de sessions. Je m'explique.
 
Sur ma station serveur tout va super bien ... jenregistre une variable qui se nomme $num_user de la facon suivante :
 
$num_user = $_POST["numero_identification"];
session_start(); //Démarrage de la session
session_register("num_user" );
 
plus loin dans d'autre page je me sers de $_SESSION[num_user]; pour récupérer la valeur de la variable ...
 
quand jutilise une station client, rien ne fonctionne ... et pourtant le même code est exécuté.
 
en fesant un session_is_registered(num_user)
sa me retourne FALSE sur le client et TRUE sur le serveur.
 
Savez-vous ce que je peux faire ?! MERCI !

Reply

Marsh Posté le 16-07-2003 à 17:01:22   

Reply

Marsh Posté le 16-07-2003 à 17:40:36    

:pt1cable: C'est quoi les sessions Clients? Et Serveurs? :pt1cable:

Reply

Marsh Posté le 16-07-2003 à 17:43:05    

c la meme chose, c'est seulement pour établir la différence dans le problème.
 
 :hello:  
 

Reply

Marsh Posté le 16-07-2003 à 18:32:24    

comment se propage ta session?
si c'est par le cookie, le client accepte-t-il les cookies?

Reply

Marsh Posté le 16-07-2003 à 19:59:52    

pour enregistrer une variable de session faut plus faire avec session_register() (cf le site www.php.net)
 
faut que tu fasses : $_SESSION['num_user']=$_POST['numero_identification']

Reply

Marsh Posté le 16-07-2003 à 20:20:32    

C'est pas le code le probleme jpense ben, c'est les mises a jour de windows qui font que jpeux pu garder mes variables de session ... etk c'est la seule chose que je vois ... comment régler sa maintenant ... jen ai aucune idée
 
tant que je change pas de page en enregistrement ma variable de session, c'est ok, mais à la seconde que je change de page ... je suis foutu
 
une solution ?!
 
ratibus :
 
$_SESSION['num_user']=$_POST['numero_identification']
 
me semble être la meme chose que :
 
$num_user = $_POST["numero_identification"];  
session_register("num_user" );  
 

Reply

Marsh Posté le 16-07-2003 à 23:02:36    

Citation :

en fesant un session_is_registered(num_user)
sa me retourne FALSE sur le client et TRUE sur le serveur.


 
Ca c'est pas clair du tout ! ! !
 
session_is_registered(num_user), ou plutôt session_is_registered('num_user') c'est du PHP, donc sur le serveur. Je vois pas comment tu fais pour que çà te retourne FALSE sur le client.
Ou alors t'a aussi un PHP sur le client :pt1cable:
 
Reprends depuis le début.
 
Sinon :
$_SESSION['num_user']=$_POST['numero_identification'];
c'est la manière actuelle de faire, mais faut pas oublier le session_start(); à faire AVANT...


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 16-07-2003 à 23:31:48    

c justement pour sa que jpose la question ...
 
c évident que c'est pas normal ...
jai fait le test sur ma machine client avec Netscape au lieu de Internet Explorer et tout roule a merveille ... c'est vraiment IE qui n'aime pas sa ...
 
Jai ce probleme depuis la dernière mise a jour critique de mon Win Xp ... Il y avait une mise a jour de sécurité de Internet Explorer et sa doit avoir eu un rapport ... mais bon .. jvois mal comment.
 
Si vous êtes au courant ... dites-le moi !

Reply

Marsh Posté le 17-07-2003 à 00:12:19    

T'as pas désactivé les cookies sur IE ?
 
Sinon, tes 2 pages, elles sont bien sur le même serveur ?
 
Sinon, t'as pas une URL qu'on puisse essayer de comprendre ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 17-07-2003 à 08:35:11    

sur toute tes pages tu es sur de faire un session_start() ?

Reply

Marsh Posté le 17-07-2003 à 08:35:11   

Reply

Marsh Posté le 17-07-2003 à 10:22:28    

je voulais dire que ton problème n'est pas clair et cela est confirmé par tous les messages arrivés après ...
donc, je pense qu'en relisant (n'est-ce pas, RElisant?) la doc du PHP sur les sessions, tu trouvera une solution ...
Comme je le disais dans les autres topics: de point de vue de client, il n'y a pas de PHP, uniquement du HTML car les navigateurs ne savent pas "parler" autre chose! D'où ma question sur les sessions clients et sessions serveurs!

Reply

Marsh Posté le 17-07-2003 à 15:47:34    

les sessions sont démarrées automatiquement (jai configuré le php.ini a 1 pour le démarrage automatique des sessions.)
 
bon je ré-explique ...
 
Oublié le client serveur ok, j'ai une station #1 qui roule sur Win XP Pro avec toutes les mises a jour disponibles d'installées ( comprise les mises a jour de sécurité de IE) et une station #2 qui roule sur Win 2000 Server sans aucune mise a jour et une station #3 qui roule sur Win XP Pro avec aucune mise a jour.
 
Lorsque je me connecte sur la station #2 et #3, tout va super bien et tout fonctionne à merveille.
 
C'est tout le contraire avec la #1 qui fonctionnait très bien avant que toutes les mises a jour soit installées (qui est le seul changement avant et apres que le problème soit arrivé).
 
J'utilise PHP Version 4.3.1
 
Je n'utilise pas les cookies et toutes les pages PHP sont sur le même serveur.
 
Voici une parti du Code :
page1.php
 
$num_user = $_POST["numero_identification"];
session_register("num_user" );
echo "<SCRIPT language=\"javascript\">window.location.href =\"" . $demar . "\";</SCRIPT>"; //$demar est la page de démarrage qui dans ce cas ci est la page2.php
 
page2.php
 
if (session_is_registered(num_user))
  echo "La variable est enregistrée.";
else
  echo "La variable n'est pas enregistrée.";
 
 
est-ce plus clair ?!

Reply

Marsh Posté le 17-07-2003 à 22:19:41    

stage a écrit :

les sessions sont démarrées automatiquement (jai configuré le php.ini a 1 pour le démarrage automatique des sessions.)
 
bon je ré-explique ...
 
Oublié le client serveur ok, j'ai une station #1 qui roule sur Win XP Pro avec toutes les mises a jour disponibles d'installées ( comprise les mises a jour de sécurité de IE) et une station #2 qui roule sur Win 2000 Server sans aucune mise a jour et une station #3 qui roule sur Win XP Pro avec aucune mise a jour.
 
Lorsque je me connecte sur la station #2 et #3, tout va super bien et tout fonctionne à merveille.
 
C'est tout le contraire avec la #1 qui fonctionnait très bien avant que toutes les mises a jour soit installées (qui est le seul changement avant et apres que le problème soit arrivé).
 
J'utilise PHP Version 4.3.1
 
Je n'utilise pas les cookies et toutes les pages PHP sont sur le même serveur.
 
Voici une parti du Code :
page1.php
 
$num_user = $_POST["numero_identification"];
session_register("num_user" );
echo "<SCRIPT language=\"javascript\">window.location.href =\"" . $demar . "\";</SCRIPT>"; //$demar est la page de démarrage qui dans ce cas ci est la page2.php
 
page2.php
if (session_is_registered(num_user))
  echo "La variable est enregistrée.";
else
  echo "La variable n'est pas enregistrée.";
 
 
est-ce plus clair ?!


 
essaie ça :
 
page1.php

Code :
  1. <?php
  2. session_start();
  3. $_SESSION['num_user'] = $_POST["numero_identification"];
  4. echo "<SCRIPT language=\"javascript\">window.location.href =\"" . $demar . "\";</SCRIPT>";
  5. ?>


 
page2.php

Code :
  1. <?php
  2. session_start();
  3. if (isset($_SESSION['num_user'])) {
  4.   echo "La variable est enregistrée.";
  5. } else {
  6.   echo "La variable n'est pas enregistrée.";
  7. }


Message édité par ratibus le 17-07-2003 à 22:34:38
Reply

Marsh Posté le 18-07-2003 à 08:53:47    

Dis, stage, as-tu lu la doc sur les sessions? Il est écrit que  
 

Code :
  1. <?php
  2. session_start();
  3. /...

 
doit être la première instruction/ligne d'un fichier si vous voulez utiliser les sessions
 
d'autre part, vérifie la configuration de tes navigateurs: la mise à jour "Sécurité" de IE a surement foutue un bordel ...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed