Ja, eerlijk gezegd is deze code precies het tegenovergestelde van de juiste.
Aangezien je blijkbaar net begonnen bent met het leren van databases, raad ik je ten zeerste aan om de meest basale manier te volgen, waarbij elke hit wordt opgeslagen. Het maakt je code aanzienlijk korter en laat je de basisfuncties van de database leren.
Dus maak je tafel als
dt datetime,
ip varchar(15),
en voer dan bij elke treffer een zoekopdracht uit zoals deze
$stmt = $DB_CON->prepare("INSERT INTO stats VALUES (NOW(),?)");
$stmt->execute([$_SERVER['REMOTE_ADDR']]);
en om de telling te krijgen, moet je deze code uitvoeren
$count = $DB_CON->query("SELECT count(*) FROM stats")->fetchColumn();
Deze laatste vraag is het belangrijkst:zoals u kunt zien, kan een database voor u tellen (evenals optellen, gemiddelden tellen of andere berekeningen doen). Je moet dus nooit berekeningen aan de PHP-kant doen, maar altijd het eindresultaat opvragen uit de database.
Met deze database-setup kunt u uw dagelijkse verkeer ontvangen door de resultaten eenvoudig op deze manier te groeperen:
$daily = $DB_CON->query("SELECT count(*), date(dt) FROM stats GROUP BY date(dt)")->fetchAll();
En kan zelfs nieuwe bezoekers krijgen.