[Résolu] Ne pas charger une page pdt la vérifi des variable de session

Ne pas charger une page pdt la vérifi des variable de session [Résolu] - PHP - Programmation

Marsh Posté le 04-12-2008 à 11:30:54    

Bonjour,
 
Je développe actuellement un petite page avec l'utilisation de session, jusque la tout va bien !
 
J'arrive très bien a ouvrir et insérer des valeurs dans ma session.
Cependant, sur chaque page php au préalable, je fais une vérification pour savoir si la personne qui veux afficher une page a les droits dessus.
 

Code :
  1. <?php
  2. session_start();
  3. if (strtoupper($_SESSION['test']) != "MARTIN" ){
  4.         echo '<meta http-equiv="refresh" content="0;url=index.php" )>';
  5. }
  6. Si le prénom est MARTIN, je décide de lui afficher la page
  7. ?>


Cependant, il arrive que la page s'affiche pendant 2 secondes puis qu'il soit ensuite rediriger.  
Cela fais que l'utilisateur peut tout de même voir un peu la page et cela me gène.
 
Merci de votre aide


Message édité par johnson950 le 04-12-2008 à 14:02:29
Reply

Marsh Posté le 04-12-2008 à 11:30:54   

Reply

Marsh Posté le 04-12-2008 à 11:34:48    

Il ne faut jamais utiliser des meta refresh ! A supprimer de ta base de connaissances cérébrale de suite.
 
Il faut plutôt faire une redirection normalle :

Code :
  1. if (strtoupper($_SESSION['test']) != "MARTIN" ){
  2.  exit;    
  3. }

Reply

Marsh Posté le 04-12-2008 à 11:47:49    

Merci de ton aide !!
 
Juste par curiosité pourquoi ne doit on pas utiliser de balise meta ?

Reply

Marsh Posté le 04-12-2008 à 11:56:08    

Déjà comme tu as pu le remarquer l'internaute peut voir la page parfois pendant 2 secondes (voire tant qu'il veut, suffit de télécharger la page).
 
Ca nique le bouton précédent aussi (si on fait précédent, on rearrive sur la redirection, du coup on est re-redirigé, donc impossible de revenir plus loin en arrière).
 
Y'a un article là-dessus : Use standard redirects: don't break the back button! (anglais)

Reply

Marsh Posté le 04-12-2008 à 14:01:39    

Merci

Reply

Marsh Posté le 04-12-2008 à 19:39:39    

FlorentG a écrit :

Il ne faut jamais utiliser des meta refresh ! A supprimer de ta base de connaissances cérébrale de suite.
 
Il faut plutôt faire une redirection normalle :

Code :
  1. if (strtoupper($_SESSION['test']) != "MARTIN" ){
  2.  exit;    
  3. }



 
[:sadnoir]

Reply

Marsh Posté le 04-12-2008 à 20:10:26    


Hein ?

Reply

Marsh Posté le 05-12-2008 à 10:07:22    

normalle au lieu de normale [:sadnoir]


Message édité par Marty_McFly le 05-12-2008 à 10:07:36

---------------
arg(z) = pi /2 donc z = i, moi je prends pas
Reply

Marsh Posté le 05-12-2008 à 10:08:20    

C'est plus joli avec deux L :o

Reply

Marsh Posté le 05-12-2008 à 11:30:13    

spafo


---------------
arg(z) = pi /2 donc z = i, moi je prends pas
Reply

Sujets relatifs:

Leave a Replay

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