Obbligare un navigatore al passaggio da una prima pagina iniziale memorizzando le statistiche generate.
ALLWEB free
Directory Web Script Linguaggi
Italiano Inglese Tutte
 
 28 Apr 2017
aggiungi in preferiti  
Home    Mappa directory    Script




Obbligare un navigatore a passare da una pagina iniziale e memorizzare le statistiche:

Prima di procedere nell'articolo verificate questo link:

PAGINA DI PROVA



Non ripeteremo quello già scritto nell'articolo "obbligo di passaggio" , se non lo avete fatto vi consigliamo di leggerlo perché correlato.

In pratica con questo semplice script obblighiamo l'utente a passare da una pagina iniziale e memoriziamo i dati che genera la sua connessione, ossia:
1) Data e ora di connessione.
2) Codice IP del navigatore.
3) Pagina di provenienza (Quella che ha visitato prima di quella in oggetto).


L'operazione di scrittura dati è effettuata nel foglio di prova numero 1 (nell'esempio è quello dove si chiede di cliccare su "ENTRARE"), mentre sul foglio di prova numero due è visualizzato il file di testo generato con i dati dei navigatori.

In pratica abbiamo unito i due script descritti in due articoli di questo sito:
- obbligo di passaggio
- controllo sito



Spiegazione codice:

Il codice in oggetto deve essere inserito nella prima riga di ogni programma, possibilmente salvando lo script in un foglio esterno ed inserendolo con il costrutto "include".
In questo modo in caso di variazioni dovremo modificare una sola pagina.

Da adesso, permessi di scrittura ed indirizzo file corretto permettendo avremo lo script funzionante.



Codice pagina da includere:

<?
session_start();
if (!isset($_SESSION['ip'])) {//chiedo se esiste una variabile chiamata IP, se non esiste proseguo nello script e reindirizzo il navigatore
$refe=$_SERVER['HTTP_REFERER'];//estraggo la pagina di provenienza
$ip=$_SERVER['REMOTE_ADDR'];//estraggo il codice IP
$_SESSION['ip']=$ip;//creo la variabile di sessione chiamata IP, il prossimo ciclo if non girerà
$time=time();//estraggo il timestamp del collegamento
$date=date('d-m-y H:i:s',$time);//risalgo alla data e l'ora del collegamento
$var=@fopen("/home/httpd/vhosts/tuosito.it/...../nomefile.txt","a+");//apro il file di testo dove memorizzo i dati
@fwrite($var, "Data e ora: ".$date."Numero ip: ".$ip." provenienza:".$refe."n");//scrivo i nuovi dati sul file di testo
@fclose($var);//chiudo il file di testo
$vari=file("/home/httpd/vhosts/tuosito.it/...../nomefile.txt");//estraggo un array dal file di testo, ogni riga è un elemento
$i=count($vari);//conto le righe dell'array, perché uguali al numero di visite ricevute
header("location: http://www.allwebfree.it/articolo_php_prova_1.php"); //reindirizzo l'utente alla prima pagina, da adesso non sarà più reindirizzato
}
?>


Da edesso avrete un file di testo dove potrete leggere chi è arrivato alla pagina del Vs. sito.

IMPORTANTE:
Lo script in oggetto non memorizza se un navigatore è entrato, ma solo chi è arrivato alla pagina di controllo, perchè la scrittura sul file di testo avviene prima del reindirizzamento. In pratica non possiamo sapere se effettivamente l'utente accede all'area.

Per ottenere uno script che controlli anche il numero di accessi dovete inserire uno script dopo il redirect.