[php] redirect non funziona sotto internet explorer

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
Salve, ho questo codice che non funziona bene con internet explorer con firefox e altri funziona.
Per testarlo si deve fare redirect("pagina_da_dove_redirect.php",5);
che 5 sta per 5 secondi.

ecco il codice:
PHP:
<?php
function redirect($url,$tempo = FALSE ){
 if(!headers_sent() && $tempo == FALSE ){
  header('Location:' . $url);
 }elseif(!headers_sent() && $tempo != FALSE ){
  header('Refresh:' . $tempo . ';' . $url);
 }else{
  if($tempo == FALSE ){
    $tempo = 0;
  }
  echo "<meta http-equiv=\"refresh\" content=\"" . $tempo . ";url=" . $url . "\">";
  }
}?>

come mai?

mi potete risolvere questo problema?
grazie mille.
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
24
Roma
alessandro1997.netsons.org
Ti consiglio di modificare la funzione così:
PHP:
<?php
function redirect($url, $timeout = 0)
{
	$timeout = (int)$timeout;
	die("<meta http-equiv=\"refresh\" content=\"{$timeout}; URL={$url}\" />");
}
?>
Vedi se in questo modo fa quello che dovrebbe.
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
niente, devo usare per forza questo che uso io,

perché mi serve che quando non c'è nessun output html, mi funziona header ed invece se c'è qualche output html mi funziona il meta.

Mi dici come risolvere?
PHP:
<?php
function redirect($url,$tempo = FALSE ){
 if(!headers_sent() && $tempo == FALSE ){
  header('Location:' . $url);
 }elseif(!headers_sent() && $tempo != FALSE ){
  header('Refresh:' . $tempo . ';' . $url);
 }else{
  if($tempo == FALSE ){
    $tempo = 0;
  }

  echo "<meta http-equiv=\"refresh\" content=\"" . $tempo . ";url=" . $url . "\">";
  }
}?>
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
24
Roma
alessandro1997.netsons.org
Il tag meta funziona benissimo anche se non è stato inviato prima alcun output HTML. La funzione che avevi scritto eseguiva un controllo inutile, perché meta funzionerà sempre, sia che gli header siano stati inviati sia che non siano stati inviati...
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
Ho risolto:
ecco il codice:
PHP:
<?php
function redirect($url,$tempo = FALSE ){
 if($tempo == FALSE ){
  header('Location:' . $url);
 }else{
 
  echo "<meta http-equiv=\"refresh\" content=".$tempo.";url=".$url.">";
 }
}
?>
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
risolto anche questo problema non c'èra un tag nel refresh header:

PHP:
<?php
function redirect($url,$tempo = FALSE ){
 if(!headers_sent() && $tempo == FALSE ){
  header('Location:' . $url);
 }elseif(!headers_sent() && $tempo != FALSE ){
  header('Refresh:' . $tempo . ';url=' . $url);
 }else{
  if($tempo == FALSE ){
    $tempo = 0;
  }
  echo "<meta http-equiv=\"refresh\" content=".$tempo.";url=".$url.">";
  
 }
}
?>
 
Discussioni simili
Autore Titolo Forum Risposte Data
M [PHP] redirect se non si connette al db PHP 1
A [PHP] redirect htaccess PHP 5
M [PHP] Modi per fare redirect 301 da http a https PHP 12
M Redirect sito php su server Windows PHP 0
trattorino [PHP] [HTML] redirect iniezione su firefox PHP 5
bubino8 [PHP] Contatore Scan QR con redirect PHP 10
A redirect da pagina php chiamata da ajax PHP 2
F [PHP] [HTML] Redirect Complicato PHP 5
Fredyss redirect a altra pagina php dopo commit su postgresql con PDO PHP 1
M redirect php email inviata con successo PHP 2
Laskot Login php e redirect PHP 1
A [PHP] Problema redirect PHP 0
E [PHP] Redirect Alias su dominio principale con url primario PHP 4
G Errori PHP è possibile fare un redirect ad una pagina d'errore? PHP 3
G php redirect header location pagina bianca PHP 0
F Redirect in PHP PHP 5
L [PHP] Problema con il redirect ad un'altra pagina PHP 2
F redirect url php PHP 1
F redirect con htaccess funziona anche con fopen di php? Apache 1
maxbossi redirect PHP PHP 0
N Particolare redirect con PHP PHP 4
S Redirect php Querystring link Aiuto?? PHP 6
R script per redirect php ad orari stabiliti PHP 31
voldemort PHP Redirect 301 (moved permanently) PHP 2
S Redirect e conta click con PHP e MySql scritto da Max Bossi PHP 5
M Aiutino con php e redirect PHP 7
D redirect in php PHP 2
G Come far fare redirect al form mail in php PHP 3
S Redirect in una pagina in PHP!! PHP 2
S Response.Redirect e Response.End in PHP!!!! PHP 3
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
P Data scraping in PHP non funziona PHP 4
C Calcoli matematici in php PHP 5
F Scrivere dei dati in word con php PHP 0
D PHP leggere cartella di Windows PHP 2
I dominio aruba versione php server linux Domini 3
G Colorare menu select attraverso ricerca php PHP 0
L PHP motore di ricerca nel sito PHP 1
S PHP e Mysqli PHP 0
Y Stampare da php su un foglio A6 attraverso una stampante esterna PHP 1
M Visulizzare immagine con php PHP 8
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
G leggere file txt e stampare con php il contenuto a video PHP 7
F Ricreare struttura php+mysql su Xampp Apache 0
Z PHP.INI - STMP per invio email con PHP Server Dedicati e VPS 0
M Array associativi php su 2 campi mysql PHP 10
G Invio form con PHP PHP 3
T fatture con voci fattura in php PHP 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
M Collegamento tra form html e script php PHP 4

Discussioni simili