Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1186 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] - Redirection sans fuckin' header() ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] - Redirection sans fuckin' header() ...

n°164818
Zero Cool
D'abord arrêter le chimique...
Posté le 24-06-2002 à 17:17:05  profilanswer
 

Salut à tous les PHPistes ...
 
Je sais que la question a déjà été abordée, mais je n'ai pas vu de réponse sur le forum !
 
En ASP (désolé), on peut faire un Response.Redirect (équivalent de header(), pour les PHPistes purs) n'importe où dans le code, alors pourquoi n'y aurait-il pas une fonction équivalente en PHP (même autre que header(), je m'en fous..) ??
 
Fait chier sur ce coup-là, PHP ! :fou:


---------------
"D'abord arrêter le chimique, et après reprendre l'école ..."  
mood
Publicité
Posté le 24-06-2002 à 17:17:05  profilanswer
 

n°164821
gm_superst​ar
Appelez-moi Super
Posté le 24-06-2002 à 17:19:29  profilanswer
 

Tu peux faire un header() où tu veux dans ton code tant que tu n'as pas envoyé de HTML

n°164828
Zero Cool
D'abord arrêter le chimique...
Posté le 24-06-2002 à 17:27:26  profilanswer
 

gm_superstar a écrit a écrit :

Tu peux faire un header() où tu veux dans ton code tant que tu n'as pas envoyé de HTML




 
Oui je sais mais ... ah meeerde, en ASP c'est pareil !
'tain, je pensais avoir déjà fait des redirections après du code HTML en ASP, mais en fait non, c'est comme en PHP.
 
Désolé pour PHP.
 
Bon, je vais me coucher maintenant.


---------------
"D'abord arrêter le chimique, et après reprendre l'école ..."  
n°164896
gizmo
Posté le 24-06-2002 à 18:30:51  profilanswer
 

si tu utilise un systeme de buffering, tu ne dois même plus y faire attention.

n°164929
--stan--
Posté le 24-06-2002 à 19:41:22  profilanswer
 

eske tu pe etre plus clair stp ? :)

n°164957
Dost67
Posté le 24-06-2002 à 20:26:25  profilanswer
 

Tu dois impérativement être en PHP 4..
 
Tu mets :

Code :
  1. <?
  2. ob_start('ob_gzhandler');
  3. ?>

au début du fichier, après tu peux afficher n'importe quoi, de toute manière ce sera mis en cache... Tu peux ainsi mettre des header() n'importe où.
 
Autre solution, utiliser cette fonction :

Code :
  1. function Redirect($dest) {
  2.   if (!headers_sent())
  3.     header('Location: ' . $dest);
  4.   else
  5.     echo '<script language="JavaScript">window.location=\'' . $dest . '\'</script>';
  6. }

Si le header() ne peut fonctionner ça passe par JavaScript. Si JavaScript n'est pas présent chez le user, eh bien la redirection n'aura pas lieu :(.

n°165014
--stan--
Posté le 24-06-2002 à 21:42:59  profilanswer
 

ok merci!

n°165374
JuLenFoRCe
Posté le 25-06-2002 à 13:32:10  profilanswer
 

pffffft !!
 
ya VACHEMENT plus simple
c une petite fonction toute conne mais qui marche a tous les coups. c pas comme header("truc.php" ) qui marche 2 fois sur 5
 

Code :
  1. function redirige($url)
  2. {
  3.    die('<meta http-equiv="refresh" content="0;URL='.$url.'">');
  4. }


apres pour changer de page tu fais
redirige("tapage.php" )
 
et voila :bounce:


Message édité par JuLenFoRCe le 25-06-2002 à 13:32:38
n°167077
JuLenFoRCe
Posté le 27-06-2002 à 11:45:16  profilanswer
 

bon bah ca a l'air bon, apparemment
 
personne n'a reposté de message pour faire la redirection :D  :D

n°167214
Dost67
Posté le 27-06-2002 à 13:55:15  profilanswer
 

Tu places de <meta> hors du <head></head> toi :D

mood
Publicité
Posté le 27-06-2002 à 13:55:15  profilanswer
 

n°167217
Dost67
Posté le 27-06-2002 à 13:56:53  profilanswer
 

Julien ça fonctionne ton truc si c'est po entre <head> et </head> ?

n°167224
JuLenFoRCe
Posté le 27-06-2002 à 14:05:47  profilanswer
 

ben, vu que c une fonction php, tu la mets en debut de page entre les balises <? et ?> et pis voila
 
apres tu l'utilises partout dans ta page
 
donc pas besoin de la mettre entrre les balises head, bikoze c po une fonction javascript mais PHP !!!  :sol:

n°167288
Dost67
Posté le 27-06-2002 à 15:03:29  profilanswer
 

T'as po répondu à ma question.

Code :
  1. <html>
  2. <head>
  3. <title>Titre</title>
  4. <!-- Place normale pour les <meta> -->
  5. </head>
  6. <body>
  7. Le texte...
  8. <?
  9. Redirige('page.php');
  10. ?>
  11. </body>
  12. </html>

En temps normal on met les <meta> das le <head> et po dans le <body> donc c'est pour ça que je doute de l'efficacité de ta solution et te demande si dans le cas ci-dessus ça fonctionnera ?

n°167510
JuLenFoRCe
Posté le 27-06-2002 à 17:16:48  profilanswer
 

ok...on se la refait, moins stressé  ;)  
 
c une fonction PHP et non JS
 
il suffit donc de mettre au tout debut de page, AVANT LE CODE HTML
 
<?
la declaration de la fonction
?>
 
et apres dans la page on l'appelle et pis voila
 
et ca marche A TOUS LES COUPS :bounce:  :p
 
Donc pour repondre a ta question, Dost67, OUI ca marche à tos les coups
 
et pis de toute façon, tu n'as qu'à esayer
tu me diras apres :D


Message édité par JuLenFoRCe le 27-06-2002 à 17:18:04

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] - Redirection sans fuckin' header() ...

 

Sujets relatifs
PHP, utiliser une dll[PHP] Alternative à br2nl() ??
[PHP] Problème de Parsing :(((PHP MSSQL charset
[PHP/MYSQL][PHP][NB] différence entre print et echo et entre des " et '
[PHP] upload de fichier qd on est un newbie ...[ca devient urgent][PHP] comment mettre un site en cache ?
[APACHE + PHP ] uploader des gros fichiers[php] redirection d email qq connait ??
Plus de sujets relatifs à : [PHP] - Redirection sans fuckin' header() ...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR