Was
maxibt hier schreibt ist natürlich mindestens so ein Quatsch. Falls tatsächlich kommagetrennte IP in ein Attribut eingetragen werden sollen, so ist das haarsträubendes DB-Design. Und genau aus diesem Code kommt auch der komische Eintrag "Resource id #4127.0.0.1", weil "Resource id #4" steht logischerweise in $result, und die IP wird dort einfach drangehängt. Ich weiss zwar nicht, was diese komische Zählerei mit IP's soll, wenn schon ein Nickname vorhanden ist. Aber wenn es sein muss, dann erstelle für jede IP einen eigenen Eintrag in die Tabelle (bzw in einer eigenen Tabelle, die dann nickname und IP beinhaltet). Und mit
mysql_query() erhälst du nie die Daten, sondern nur den Pfad dazu (in andern DBMS's nennt man das auch Cursor). Die Daten erhälst du erst mit
mysql_fetch_...(). Der Code könnte dann sinngemäss etwa so aussehen:
Code:
$ip = $_SERVER['REMOTE_ADDR'];
$sql = "SELECT count(*)
FROM ips
WHERE ip = '$ip'");
$res = mysql_query($sql) or die(mysql_error());;
list($num) = mysql_fetch_row($res); // Rückgabewert is Array mit einem Element
if($num > 0)
{
echo "Counter hat dafür schon gezählt";
}
else
{
$last = $visitors + 1;
$sql = "UPDATE users
SET counter_calls = $last
WHERE nickname = '$nickname' ";
$res = mysql_query($sql) or die(mysql_error());
$sql = "INSERT INTO ips (nickname, ip)
VALUES('$nickname', '$ip'";
$res = mysql_query($sql) or die(mysql_error());
}