Buongiorno a tutti, ho iniziato da poco a studiare PHP, e per fare un po' di pratica ho provato a scrivere un contatore di visite che mantenga aggiornato un database delle visite dei giorni passati. Ovviamente non funziona, altrimenti non sarei qui. Il problema credo che sia alla riga 16, quando elaboro i risultati della query mysql. Vi posto il codice, sperando che qualcuno possa darmi una mano.
Codice PHP:
<?php
include("php/config.inc.php");
//include("php/format.inc.php");
//connessione al database
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == false)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
//controllo stato visite
$today = date("Ymd");
//echo $today;
$query = "SELECT visits from counter where day='$today'";
$results = mysql_query($query) or die(mysql_error()."
ottenendo le visite odierne");
$visits_till_now = mysql_fetch_array($results, MYSQL_ASSOC);
if (is_numeric($visits_till_now)){
//echo $visits_till_now;
}
else {
$visits_till_now = 0;
//echo "Speriamo che sia semplicemente la prima visita, visits_till_now: ".$visits_till_now;
}
//controllo del cookie
if (isset($_COOKIE['lastvisit']) && $_COOKIE['lastvisit'] == $today){
//mi pare che non debba fare niente
}
else { //e' questo il caso del primo accesso dopo almeno sei ore
setcookie("lastvisit","$today", time()+60*60*6);
$visits_till_now +=1;
$query = "insert into counter (day, visits) values (\"$today\", \"$visits_till_now\") on duplicate key update visits=\"$visits_till_now\");";
mysql_query($query) or die(mysql_error());
echo "
ho appena pubblicato il cookie";
}
echo "
Il numero di visite di oggi FORSE e': ".$visits_till_now;
?>
~
~
~
~