Tutti i codici per reindirizzare l’utente verso un’altra pagina in modo automatico

A seconda del linguaggio di programmazione usato e del sistema che si predilige, abbiamo a disposizione diversi modi per reindirizzare un utente verso un’altra pagina in modo del tutto automatico.
Il redirect ci è utile in numerose situazioni. Un esempio l’abbiamo nel caso in cui, nel sito, abbiamo un’area riservata accessibile solo agli utenti registrati; se un utente non registrato cercherà di accedere a quella pagina, dovremmo bloccarlo con una funzione di controllo e inviarlo a un’altra pagina di inizio (per esempio l’home o la pagina di login).

In questo articolo vedremo:
– reindirizzamento con puro html
– reindirizzamento tramite htaccess
– reindirizzamento con javascript
– reindirizzamento con php

Html puro e htaccess

1
<meta http-equiv="refresh" content="5;url=home.php">

Il codice sopra va inserito entro i tag : si tratta infatti di un attributo metatag che agisce al caricamento della pagina.
Il numero iniziale (“5”) sono i secondi che passano prima di essere reindirizzati dal momento in cui si accede alla pagina. Il campo url stabilisce invece la pagina di destinazione del reindirizzamento. Naturalmente al posto di home.php si può inserire un indirizzo internet completo (es: “http://www.sito.it/”).

Con l’htaccess il concetto è un po’ diverso. Per un approfondimento completo sull’uso dell’htaccess fate riferimento a questo articolo. I commenti si spiegano da soli.

1
2
3
#Qui sotto invece un esempio di redirect 301
#Indirizza le sottocartelle di /ecommerce/ verso sito.it
redirect 301 /ecommerce/ http://www.sito.it/
1
2
3
4
5
#Se l'indirizzo non è nè www.sito.it nè sito.it, reindirizza a altro_sito.com
RewriteEngine On
RewriteCond %{HTTP_HOST} !www.sito.it
RewriteCond %{HTTP_HOST} !sito.it
RewriteRule (.*)$ http://www.altro_sito.com [R=301,L]

PHP, ASP e Javascript

In php per reindirizzare si fa uso della funzione header. Le due righe qui sotto sono equivalenti, con la differenza che nel secondo caso è possibile stabilire un tempo di attesa (come nel codice html visto sopra).

1
2
3
4
5
<?php
//Reindirizza alla pagina "home.php"; deve essere inserito all'inizio del codice php
header("Location: home.php");
header("Refresh: 0; URL=home.php");
?>

In asp il concetto è lo stesso:

1
2
3
<%
Response.Redirect("home.php")
%>

Per reindirizzare con javascript si fa uso del metodo self.location. Subito dopo vediamo una funzione in php che permette di richiamare, in qualsiasi punto della pagina, la funzione javascript qui sotto: sarà sufficiente evocare la funzione gotoPage da noi creata passandogli l’indirizzo della pagina di destinazione.

1
2
3
<script language="javascript">
self.location="home.php"
</script>
1
2
3
4
5
6
7
8
<?php
function gotoPage($indirizzo=""){
	echo '<script language="javascript">';
	echo 'self.location="'.$indirizzo.'"';
	echo '</script>';
}
gotoPage("home.php");
?>
Etichette
Etichette:, , , ,
Ultimi Commenti
  1. andrea

Rispondi a Manuel Marangoni Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.