PHP: ottenere URL della pagina corrente ed inviarlo via mail

Recentemente (oggi) mi son imbattuto nel dover inviare, tramite la funzione mail usando PHP, il valore dell'URL della pagina in cui il "mittente" invia il messaggio, una sorta di "referral page" in pratica.

Ci sono mille modi per poter affrontare la situazione, ma da buon "yeti" (come direbbe gin0kj) opto sempre per quella con meno codice ma ugualmente efficace.

Il tutto si racchiude in una riga di codice, la seguente:

<?

$pagina= "http://" . $_SERVER['HTTP_HOST']  . $_SERVER['REQUEST_URI']."";

?>

In pratica si chiede al server, il dominio con 'HTTP_HOST' (webinblack.net nel nostro caso) e l'url con 'REQUEST_URI'  (707/guida/php-ottenere-url-della-pagina-corrente-ed-inviarlo-mail-2.php, per questa pagina, e li "unisce" nella variabile "$pagina")

Fatto ciò, includiamo la variabile $pagina nel nostro modulo dei contatti, settandolo come valore nascosto (hidden):

<form method="post" action="blabla.php">

<input name="pagina" type="hidden" id="pagina" value="<?php echo $pagina ?>" />
<input name="" type="submit" value="invia" />  </form>

e quindi creiamo il file che processa i valori e li invia in mail:

<?

$pagina = $_REQUEST['pagina'] ;

$messaggio = "Inviato da: ".$pagina;

$email: "emailditizocaio";

$headers = "Da:" . $email;

mail( "maildestinatario", "Soggetto mail",    $messaggio, $headers);

?>

..et voilà riceverete una email con su scritto "Inviato da: http://webinblack.net/707/guida/php-ottenere-url-della-pagina-corrente-ed-inviarlo-mail-2.php"

email

Autore: Simone Tambasco

Geek inside (pure troppo)

Condividi su