How can the code be optimized to prevent new database records from being created with each page visit?

To prevent new database records from being created with each page visit, we can check if a record already exists for the current visitor before inserting a new one. This can be achieved by querying the database for a matching record based on a unique identifier, such as the visitor's IP address or user agent. If a record is found, we can update it instead of creating a new one.

// Check if a record already exists for the current visitor
$visitor_ip = $_SERVER['REMOTE_ADDR'];
$visitor_agent = $_SERVER['HTTP_USER_AGENT'];

$stmt = $pdo->prepare("SELECT * FROM visitor_logs WHERE ip_address = :ip AND user_agent = :agent");
$stmt->execute(['ip' => $visitor_ip, 'agent' => $visitor_agent]);
$existing_record = $stmt->fetch();

if($existing_record) {
    // Update existing record
    $stmt = $pdo->prepare("UPDATE visitor_logs SET visit_count = visit_count + 1 WHERE id = :id");
    $stmt->execute(['id' => $existing_record['id']]);
} else {
    // Insert new record
    $stmt = $pdo->prepare("INSERT INTO visitor_logs (ip_address, user_agent, visit_count) VALUES (:ip, :agent, 1)");
    $stmt->execute(['ip' => $visitor_ip, 'agent' => $visitor_agent]);
}