2010-08-11 8 views
5

Sto lavorando a un motore di statistiche del sito Web per una classe. L'idea è che puoi semplicemente incorporare un piccolo codice nella tua pagina web che richiamerà il sito web delle statistiche su ogni pagina caricata e il sito web delle statistiche seguirà quindi i tuoi successi e così ... niente di eccezionale.Ottieni l'URL della pagina web chiamante in PHP

Quello che mi piacerebbe fare è essere in grado di abbattere gli accessi al sito web tramite la pagina web. Ad esempio, una persona può includere lo stesso codice su ogni pagina e il sito web delle statistiche saprà quale pagina ha colpito quante volte. C'è un modo in PHP per ottenere l'URL della pagina chiamante (la pagina su cui esiste il codice incorporato)? So come ottenere l'URL della pagina in cui è in esecuzione il codice PHP, ma non la pagina chiamante.

In alternativa, potrei probabilmente usare qualche codice JavaScript per passare l'URL della pagina al sito web delle statistiche, ma meno codice deve essere incorporato meglio quindi spero in una soluzione PHP.

Grazie in anticipo per qualsiasi aiuto!

risposta

18

$_SERVER['HTTP_REFERER'] otterrà la pagina di riferimento.

+0

Sì, ho sentito parlare di questo ... e probabilmente avrei dovuto provarlo prima di pubblicare questa domanda. Non pensavo che un'immagine o uno script incorporato avessero un referrer. Gli darò un colpo. Grazie! – Nate

+0

Ha funzionato! Grazie! – Nate

2

Oltre a $_SERVER['HTTP_REFERER'] poiché potrebbero essere presenti blocchi di grandi dimensioni dell'URI che si desidera ignorare, è sufficiente passare il nome della pagina come parametro di richiesta allo script chiamato.

I.E. sulla pagina con le statistiche di monitoraggio si richiede

URL/stats_tracker.php?page=checkout 

sulla pagina delle statistiche inseguitore basta cercare

$_REQUEST['page']; 

Questo può essere più pulito che guardare l'intero URL.

+0

Questo è un ottimo punto :) Poiché HTTP_REFERER può essere bloccato da qualche addon :) –

Problemi correlati