Tag Archive for 'header'

Altra alternativa all’header php

Un pò di tempo fa ho postato un articolo riguardante una soluzione come alternativa all'header php.

Quì il link: Alternativa All'Header

Quella soluzione potrebbe andar bene per piccoli gestionali interni.

Il difetto sta nel fatto che per qualche microsecondo, viene visualizzato codice magari non voluto.

Un'alternativa molto utile ed efficace è data dallo javascript.

PHP:
  1. <?php
  2. echo "<script type=\"text/javascript\">
  3. window.location=\"pagina.php\";
  4. </script>";
  5. ?>

Alternativa all’ header PHP

A volte utilizzando l'espressione

PHP:
  1. if ( isset($_POST['Submit']) && $_POST['Submit'] == "Inserisci" ){
  2.     $GoTo = "paginaPHP.php";
  3.     header(sprintf("Location: %s", $GoTo));
  4. }

può capitare di vedersi un errore del tipo:

HEADER ALREADY SENT

Una soluzione veloce e molto efficace potrebbe essere quella di utilizzare il tag meta di html

PHP:
  1. <?php
  2. //blocco condizionale
  3. if ( isset( $_POST['Submit'] ) && $_POST['Submit']== "Inserisci" ){
  4. ?>
  5.  
  6. <META HTTP-EQUIV="REFRESH" CONTENT="2; URL=http://www.sitoweb.it">
  7.  
  8. <?php
  9. }
  10. ?>

La pagina Web è scaduta, evitarlo

Usando il tasto "back" del browser per tornare ad una pagina che precedentemente aveva ricevuto dati da un modulo POST, noterai che, con Explorer ti comparirà una pagina bianca con su la scritta "La pagina Web è scaduta", mentre Firefox ti chiederà di re-inviare i dati.
In entrambi i casi si tratta di aggiornare la pagina.
Di fatto non è un problema, ma può esserlo se lo è per il cliente al quale stai sviluppando il sito.
Come puoi evitarlo?
Metti questo all'inizio della pagina.

PHP:
  1. header('Cache-Control: Private');

Reindirizzare verso un’altra pagina

Questo è il metodo per reindirizzare l'utente su un'altra pagina con php. Ad esempio, volendolo reindirizzare su nomepagina.php ...

PHP:
  1. header ("Location: nomepagina.php");

E' importante ricordarsi che questo comando non può essere utilizzato dopo un qualsiasi output html, ma sempre prima.