Premetto che me la cavo con Mysql, ho mischiato quest'altro linguaggio ma ke non conosco bene, ho scopiazzato qualche pezzo, un casino.. Se qualcuno legge attentamente capirà quello che voglio fare, solo che non riesco a farlo solo con mysql.. Mi manca un pezzo
Codice:
<?php
// include our configuration file
require '../mysql/configcounter.php';
$msg = "Sorry i was unable to find that link in my Database!"; // Message to show when link is not found
$URL_2 = "link"; // Column to look in
$Tbl_2 = "contatorepunti"; // Table to look in
$Clicks_2 = "punti"; // Column to update
$ip = $_SERVER['REMOTE_ADDR'];
$ora = time(); //momento visita
$connect = new PDO(DB_TYPE . ":host=" . DB_HOST . ";dbname=" . DB_NAME, DB_USER, DB_PASS);
$connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $connect->prepare("SELECT link FROM articoli WHERE id = :id");
$stmt->bindParam(':id', $_GET['id'], PDO::PARAM_INT);
$stmt->execute();
$URL_db = $stmt->fetch(PDO::FETCH_ASSOC);
$link = $URL_db[$URL_2];
if (empty($URL_db)) {
echo $msg;
exit;
}//empty($URL_db)
[COLOR="#FF0000"]$query_1 = mysql_query("SELECT * FROM contatorepunti WHERE titolo = '$link' AND ip = '$ip'");
if(mysql_num_rows($query_1)== 0){ //non ci sono record per quell'ip e quella pagina[/COLOR]
$stmt = $connect->prepare("INSERT INTO $Tbl_2 (titolo, ip, punti, tempo) VALUES ('$link', '$ip', '3', '$ora')");
$stmt->bindParam(':id', $_GET['id'], PDO::PARAM_INT);
$stmt->execute();
header('Location: ' . $link);
exit;
[COLOR="#FF0000"]}else{ //il record esiste
$riga = mysql_fetch_array($query_1);
$intervallo = ($ora - $riga['tempo'])/3600;
if($intervallo > 24)[/COLOR]{
$stmt = $connect->prepare("UPDATE $Tbl_2 SET $Clicks_2 =$Clicks_2 +3, tempo = $ora WHERE titolo = '$link' AND ip = '$ip'");
$stmt->bindParam(':id', $_GET['id'], PDO::PARAM_INT);
$stmt->execute();
header('Location: ' . $link);
exit;
}
}
?>