de nouveau besoin de votre aide - à propos des sessions

Eléphanteau du PHP | 20 Messages

27 oct. 2005, 13:36

Bonjour à tous,

voilà mon pb, j'ai un site php qui marche très bien sur mon pc sous easyphp 1.8

Je vais au bureau pour montrer à mon responsable l'avancée de mes travaux. j'installe easyphp 1.8, je copie mes fichiers dans www, je crée ma base de données mais quand j'accède au site:
la page de login s'affiche correctement, mais quand on valide la connexion la seconde page est complètement blanche.

La page en question commence par:

Code : Tout sélectionner

session_start(); if (@$auth != "yes") { header("Location: login.php"); exit(); }
donc je supposte que $auth est différent de "yes" du coup rien ne s'affiche. Cependant ce code fonctionne parfaitement bien sur ma machine.

Auriez-vous une piste pour savoir ce qui ne va pas (je ne peux pas faire de test avant de retourner au bureau)

merci de votre aide

Isa

VaN
Mammouth du PHP | 1107 Messages

27 oct. 2005, 14:14

vérifie deja que la le probleme vient bien de la valeur de ta variable :
session_start(); 
  if (@$auth != "yes") 
  { 
     header("Location: login.php"); 
    exit(); 
  }
  else { echo "pwet"; }

Mammouth du PHP | 1885 Messages

27 oct. 2005, 15:40

D'où provient $auth?
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

Eléphanteau du PHP | 20 Messages

27 oct. 2005, 15:44

j'ai une page login.php dans laquelle je fais

Code : Tout sélectionner

session_start(); session_register('auth'); //ici j'ai ma requête pour récupérer login et mot de passe //si login et mot de passe correct alors $auth = "yes";
Isa

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

27 oct. 2005, 18:26

as tu était voir la doc au sujet de session_register()

certeinement que sur ta machine le register_global est a on, d'où la raison que tu peut utiliser $auth directement dans l'autre page.

essai de coder comme suite:
$_SESSION['auth']="yes";
le test sur l'autre page
session_start();
  if ($_SESSION['auth'] != "yes")
  {
     header("Location: login.php");
    exit();
  }

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphanteau du PHP | 20 Messages

27 oct. 2005, 18:52

merci, j'essaierai de faire comme ça la prochaine fois que je pourrais tester.

J'ai effectivement pensé que ça pouvait venir de register_globals et j'ai édité le fichier php.ini mais j'ai peut-être oublié de redémarrer le serveur... ??? je n'avais pas beaucoup de temps pour faire mes tests mon responsable partait en rdv dans la demi-heure...

de toute façon ça me semble plus propre comme ça:

Code : Tout sélectionner

$_SESSION['auth']
je vais déjà tester chez moi en vérifiant que register_globals est bien sur off.

à bientôt,
Isa

ps: merci à tous gràce à vous j'ai fait plein de progrès ;-)