ven 25 jan 2008

exit() et redirection via header()

25 01 2008
<?php
  if($redirect) 
  {
    header("Location: http://developpeur.mediabox.fr");
  }
  
  unlink('mon_fichier_tres_important.pdf');
 
  ma_fonction_qui_nexiste_pas();
 
  unset($_SESSION);
 
  mysql_query("DROP DATABASE mb_db", $connexion); // : )
?>

Essayez ceci pour voir ^^

Bon effectivement je sort l'artillerie lourde, mais il faut savoir que la fin d'une page php continue d'être exécutée sur le serveur malgré une redirection via un header Location.

Du coup vous pouvez faire échouer votre redirection si une erreur survient, faire une manipulation non souhaitée ou redéclarer des variables et ensuite vous demander à quelle endroit tout ceci a été modifié.

Donc un petit conseil :

<?php
  if($redirect) 
  {
    header("Location: http://developpeur.mediabox.fr");
    exit(); // Important !
  }
 
  unlink('mon_fichier_tres_important.pdf');
 
  ma_fonction_qui_nexiste_pas();
 
  unset($_SESSION);
 
  mysql_query("DROP DATABASE mb_db", $connexion); // : )
?>

Stoppez vos scripts après un header :)

1 commentaire à exit() et redirection via header()

25 01 2008
favatar de lipki lipki :

A merci, c'est bon a savoir, je me demande si je me suis pas déjà fait avoir sans m'en rendre compte.

Enfin comme ça je suis fixé.