How can PHP be used to track the number of users viewing a specific file or URL?

To track the number of users viewing a specific file or URL in PHP, you can use a combination of session variables and a database. When a user accesses the file or URL, increment a counter in the database and store the user's session ID to prevent duplicate counts. You can then display the total number of users viewing the file or URL on the page.

<?php
session_start();

// Connect to database
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// Check if user has already been counted
if (!isset($_SESSION['viewed'])) {
    // Increment counter in database
    $sql = "UPDATE view_counts SET count = count + 1 WHERE file_url = 'specific_file_or_url'";
    $conn->query($sql);

    // Store session ID to prevent duplicate counts
    $_SESSION['viewed'] = true;
}

// Get total number of users viewing the file or URL
$sql = "SELECT count FROM view_counts WHERE file_url = 'specific_file_or_url'";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$total_users = $row['count'];

echo "Total users viewing this file or URL: " . $total_users;

$conn->close();
?>