merhabalar php ile tekil hit ve sayfa görüntülenmesi yapmaya çalıştım fakat sayfa görüntülenmesi her sayfayı yenilediğimde +1 artması gerekirken çift artıyor 2 4 6 diye kodumda sorun var mi?

<?php

date_default_timezone_set('Europe/Istanbul');

include 'baglan.php';

function ziyaretci($db) {
    $ip = gercekip();

    $query = $db->prepare("
        SELECT * FROM ziyaretciler
        WHERE ip = :ip
        AND YEAR(tarih) = :year
        AND MONTH(tarih) = :month
        AND DAY(tarih) = :day
    ");

    $query->execute([
        ':ip' => $ip,
        ':year' => date('Y'),
        ':month' => date('m'),
        ':day' => date('d')
    ]);

    $ziyaretciler = $query->fetch(PDO::FETCH_ASSOC);

    if ($ziyaretciler) {
        // BUGÜN BU İP DEN ZİYARETÇİ VARSA
        $query = $db->prepare("
            UPDATE ziyaretciler
            SET ziyaret = ziyaret + 1
            WHERE ip = :ip
            AND YEAR(tarih) = :year
            AND MONTH(tarih) = :month
            AND DAY(tarih) = :day
        ");

        $query->execute([
            ':ip' => $ip,
            ':year' => date('Y'),
            ':month' => date('m'),
            ':day' => date('d')
        ]);
    } else {
        $query = $db->prepare("
            INSERT INTO ziyaretciler (ip, ziyaret, tarih)
            VALUES (:ip, 1, :tarih)
        ");

        $query->execute([
            ':ip' => $ip,
            ':tarih' => date('Y-m-d')
        ]);
    }
}

function gercekip() {  
  if (!empty($_SERVER['HTTP_CLIENT_IP'])) {  
    $ip = $_SERVER['HTTP_CLIENT_IP'];  
  } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {  
    $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];  
  } else {  
    $ip = $_SERVER['REMOTE_ADDR'];  
  } 
  return $ip;
}

ziyaretci($db);
?>