Visualizzazione risultati 1 fino 1 di 1

Discussione: php - servizio di statistiche con database

  1. #1
    Guest

    Predefinito php - servizio di statistiche con database

    Ciao a tutti,

    prima avevo bisogno del servizio di statistiche che memorizzava i dati nel mio database, ora ce l'ho e voglio postarlo qui così chi lo vuole lo prenda.

    Il servizio di statistiche memorizzerà nel databse questi dati: pagina visitata, paginadi proveniena, ip, data e ora della visita, user agent e lingua del pc.

    Dunque iniziamo con il creare una tabella con il nome "statistiche" nel database che terrà memorizzati i dati, per farlo eseguite questa query sql nel database:
    Codice:
    CREATE TABLE `statistiche` (
    `id` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `pagina` VARCHAR( 255 ) NOT NULL ,
    `data_ora` DATETIME NOT NULL ,
    `user_agent` VARCHAR( 255 ) NOT NULL ,
    `language` VARCHAR( 6 ) NOT NULL ,
    `indirizzo_ip` CHAR( 15 ) NOT NULL ,
    `provenienza` VARCHAR( 255 ) NOT NULL 
    ) ENGINE = MYISAM ;
    Qui sono anche inseriti i campi.


    Ora bisogna creare una pagina che memorizzi i dati nel database e si può chiamare come si vuole, io l'ho chiamata statistiche.php. Questo è il codice php della pagina che inserisce i dati nel database:
    Codice PHP:
    <?php
    $host
    = "nome dell'host del database";
    $username = "l'username del database, il vostro nick";
    $password = "la password del database";
    $dbname = "il nome del database, qui si chiama my_nick";
    $connessione=mysql_connect($host,$username,$password) or die(mysql_error());
    $basedati=mysql_select_db($dbname)or die(mysql_error());
    $sql="REPLACE INTO statistiche (pagina,data_ora,user_agent,language,indirizzo_ip,provenienza) values(\"".$_SERVER['REQUEST_URI']."\",now(),\"".$_SERVER['HTTP_USER_AGENT']."\",\"".$_SERVER['HTTP_ACCEPT_LANGUAGE']."\",\"".$_SERVER['REMOTE_ADDR']."\",\"".$_SERVER['HTTP_REFERER']."\")";
    @
    mysql_query($sql) or die(mysql_error());
    ?>
    Ora per fare si che tutte le pagine del sito memorizzino i dati nel database, bisogna usare la funzione include() di php che includerà il file statistiche.php.

    Siamo arrivati al punto di estrarre i dati dal database, e qui la vita si complica. Ci sono 2 modi, vedere dal ppmyadmin (più facile) e creare una pagina php che estragga i dati dal database.

    Inoltre, come tanti chiedono, vogliono il numero delle visite uniche del loro sito, questo l'ho fatto anche io, su aiuto in privato di qualcuno di qui, il codice per far visualizzare il numero delle visite uniche è questo:
    Codice PHP:
    <?php
    $host
    = "nome dell'host del database";
    $username = "l'username del database, il vostro nick";
    $password = "la password del database";
    $dbname = "il nome del database, qui si chiama my_nick";

    $db = mysql_connect($host, $username, $password);
    mysql_select_db($dbname, $db);

    $query = "SELECT COUNT(*) AS `Righe`, `indirizzo_ip` FROM `statistiche` GROUP BY `indirizzo_ip` ORDER BY `indirizzo_ip`";
    $result = mysql_query($query, $db);
    echo
    mysql_num_rows($result);

    mysql_close();
    ?>
    Inserite questo codice dove volete che appaia il numero delle visite uniche del sito.


    Questo è il mio primo contributo su how-to, spero che vi sia utile...

    Ciao...
    Ultima modifica di dreadnaut : 23-05-2008 alle ore 19.36.51

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •