Vill du enbart spara unika adresser så kan du skapa ett UNIQUE-index för fältet, sen behöver du bara köra INSERT INTO visitors (ip) VALUES ('$ip'); och behöver inte tänka på någonting mer. Finns adressen redan i tabellen så händer inget. Finns den inte så läggs den till.
Liten överkurs, räkna unika besökare per dag och använd heltalsrepresentationen av ip-adressen för att tabellens row_format ska bli "fixed".
Kod:
CREATE TABLE `visitors` (
`d` date NOT NULL,
`ip` int(10) unsigned NOT NULL,
`n` int(10) unsigned NOT NULL,
UNIQUE KEY `d-ip` (`d`,`ip`)
)
$q = mysql_query("INSERT INTO visitors (d, ip, n) VALUES (CURDATE(), INET_ATON($ip), 1)");
if(mysql_affected_rows() != 1) {
mysql_query("UPDATE visitors SET n = n + 1 WHERE d = CURDATE() AND ip = INET_ATON($ip)");
}