Last updated on January 24th, 2022 at 05:03 pm

Hit counter using php

Welcome, this tutorial will guide you on how to make a PHP hit counter.
Requirements: You should know the basics to a file system unit. Means you need to create a text file which is writable.

Step 1: Create a PHP script called ‘counter.php‘ and a text file called ‘hits.txt‘ WITH a value of 0 [You Just Create A Text File And Put Number ZERO On That And Save It], if you are not doing this your counter script wont work.Make sure the TXT file it has enough permissions.

Step 2: Close ‘hits.txt’ (We don’t need it any more for now) Now we need to start PHP coding, so first we do is enter the basic page outline as used in most php pages.

Step 3: We have to read the file hits.txt using a PHP script, this code is outlined below. Make sure you are providing the correct location of the hits.txt file in the script.

$open = fopen("hits.txt", "r+");
$value = fgets($open);
$close = fclose($open);
$value++;

Step 4: Now we should write the count value to the text file

$open = fopen("hits.txt", "w+");
fwrite($open, $value); // variable is not restated, bug fixed.
$close = fclose($open);

Review: Now we have the number plus one in the file ‘hits.txt’

Step 5: Let’s echo the value so that it can be included anywhere.

echo $value;

Final Talk: That is all. Here is the complete code.

<?php
$open = fopen("hits.txt", "r+");
$value = fgets($open);
$close = fclose($open);
$value++;
$open = fopen("hits.txt", "w+");
fwrite($open, $value); // variable is not restated, bug fixed.
$close = fclose($open);
echo $value;
?>

Demo

Note: This script works perfectly fine for low traffic website. As it is using simple text file as a counter there are lot of restrictions. High traffic website must use a Database like MySQL to increment the counter. Check Graphical Hit Counter using PHP for more details on using database instead of text file.

14 thoughts on “How to create hit counter using php”
  1. No matter which way I enter code to read a text file or write a text file, for some reason my counter.php won’t read or write to that file. I have used 4 different ways to code it and I always end up printing 1 view. I tried debugging before I update the counter and $value never gets a value to it, just empty.

  2. Dear Daniel,

    First check if there is any extra charecters in your code when you tried to copy and paste the code above.

    Second have you checked the permissions of the TXT file you are trying to R/W with the php script.

    Third if none of the above worked pls paste the code here.I will try to rectify the issue.

    Thanks.

  3. hi, where do i put the php code, most of my website is in html but i’m using IIS php 5.2 Fast CGI. I dont want my hits displayed on my website, any advice, Just want it for personal reasons. Just started a blog.
    please help

    1. Hello Zain,
      Since you are using html codes, i suppose all your files will have .html extension.So what you need to do is since your server support php you can do like this
      1)Create a PHP file named hit.php
      2)Copy and paste the entire code i have given in this post except echo $value
      3)add an iframe in your html code
      4)Call the hit.php from the iframe.If you want you can give the height and width of the IFRAME as 0%
      4)This will get your counter hidden from others.
      This will help you i believe.Do visit my website for more tricks thanks.

  4. Its too simple.Just opening the txt file and incrementing var and closing the fileThats it.I didn’t thought that adding counter is so simple through PHP..Great! I will definitely try this.Thanks for sharing.

  5. If you get error like : Warning: fopen(“hitstxt”) [function.fopen]: failed to open stream: No error in C:\wamp\www\test\counter.php on line 3

    It’s because when you copied and pasted the code, the quotes are pasted as “hits.txt” instead of “hits.txt” in notepad.

    Solution, just replace all “ with ” and, ” with “.

  6. Adding hit counter to your blog or site is always a good idea and using PHP script is great.Using PHP scripts over others has many benefits like PHP hits counter are open source and do not depend on browser configuration that’s why they track visitors perfectly.Thanks for sharing such an informative post.

Leave a Reply

Your email address will not be published. Required fields are marked *