Hallo zusammen,
Vielleicht kann mir jemand helfen. Und zwar habe ich folgendes Problem. Ich hab mit ein kurzes Code-Schnipsel geschrieben dass mir bei jedem Klick auf einen Link den in der Datenbank gespeicherten Klick-Wert um eins erhöht. So kann ich bei Links daneben anzeigen lassen wieviele Klicks der entsprechende Link hat. So weit so gut. Das funktioniert auch prima nur bei den Links mit besonders vielen Klicks kommt es ständig vor, dass sich der Zähler quasi automatisch zurück auf 0 setzt. Ich vermute dass dies passiert, wenn mehrere User exakt gleichzeit auf einen bestimmten Link klicken. Wie kann ich dieses Problem in den Griff bekommen, sodass also die Klicks *immer* korrekt gezählt und in der Datenbank um 1 erhöht wird?
Das ist der relevante Code-Ausschnitt:
Viele Grüße und herzlichen Dank,
Johannes
Vielleicht kann mir jemand helfen. Und zwar habe ich folgendes Problem. Ich hab mit ein kurzes Code-Schnipsel geschrieben dass mir bei jedem Klick auf einen Link den in der Datenbank gespeicherten Klick-Wert um eins erhöht. So kann ich bei Links daneben anzeigen lassen wieviele Klicks der entsprechende Link hat. So weit so gut. Das funktioniert auch prima nur bei den Links mit besonders vielen Klicks kommt es ständig vor, dass sich der Zähler quasi automatisch zurück auf 0 setzt. Ich vermute dass dies passiert, wenn mehrere User exakt gleichzeit auf einen bestimmten Link klicken. Wie kann ich dieses Problem in den Griff bekommen, sodass also die Klicks *immer* korrekt gezählt und in der Datenbank um 1 erhöht wird?
Das ist der relevante Code-Ausschnitt:
Code:
$db_link = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS); mysql_select_db(MYSQL_DATABASE); $sql = "SELECT * FROM linkfun WHERE id=$id"; $result = mysql_query($sql); $row = mysql_fetch_assoc($result); $a = $row['hits']; $b = $a + 1; $sql2 = "UPDATE `linkfun` SET `hits` = '$b' WHERE `id` = '$id'"; $result2 = mysql_query($sql2); mysql_close($db_link);
Johannes
Kommentar