Table of Contents
This updated guide examines Database: How to Make a Php Hit Counter and organizes the essential facts, background, and practical takeaways in clear American English.
Part 1
Setting up the Database
Create a new database. If you already have a database, username, and password, you can skip this step. If you do not have access to a MySQL console, you'll want to enter this query in phpMyAdmin or another online query tool. If your web host provides you with a username and database already (and you have no control over creating more), use those and skip this step.
Create a database user. If you're at this step, then it is assumed you are logged into MySQL with a root account and want to create a separate user to access the hit counter. If this does not apply, use whatever username you already have for accessing the database. Be sure to use your own credentials, not the ones used in this example. Grant the user permissions to your database.
Create the hit_counter table. This table will keep track of the number of hits we get. Use the table structure as shown in the image.
Part 2
Creating the Hit Counter
Create a new file called "HitCounter.php". This file will contain a class you can include in other PHP scripts when you want it to log a hit.
Stub out the HitCounter class. Create local class members to hold your credentials and the database connection info.
Write the constructor. In the constructor, you should establish the database connection and initialize the hit counts at zero.
Write the public functions. These methods can be called from any other script that instantiates the HitCounter class.
- Add a method for processing views. This method gets called on every page load that should be counted towards a hit.
- Add a getter for the total views. This will get called in places where you want to show the total view count.
- Add a getter for the unique hits. You'll call this where you want to show the unique view count.
Fill in the remaining helper methods. These methods do the brunt of the work for the hit counter. They're marked private so that they can only be used internally.
getData()retrieves the current view counts from the database. If there isn't any data, it sets this data to zero.isNewVisitor()determines whether the visitor has already visited our website in their current sessionvisit()increments the total hit counter, and increments the unique visitor counter if the user has not visited the website in their current session.
Part 3
Using the Hit Counter
Create a new file to use your hit counter. This should be an actual page you intend the visitor to see. If you already have a website, this should be the front facing PHP script (usually index.php). Basically, any PHP file that is accessible from the internet and you want to use to update the counter.
Include the file containing the HitCounter class. It's recommended to use require_once over include.
Call the views processor. This will tell the hit counter to update the counts. It's also necessary to get the current counts for display.
Display your view counts. You can choose to show either the total number of hits or only the unique hits. It can be embedded anywhere HTML it output by the PHP script.
Test your hit counter. Your hit counters should now increment appropriately when you view your web page. If you keep refreshing, your total hit count will increase but your unique session count will stay the same. This is good.
Part 4
Database Queries
/* Creating a new database */CREATEDATABASEhit_counter;/* Get into the hit_counter database context */USEhit_counter;/* Creating a new user */CREATEUSERwikihowIDENTIFIEDBY"your password";/* Grant database permissions */GRANTALLonhit_counterTOwikihow;/* Create the hit counter table */CREATETABLE`hit_counter`(`total_hits`int(11)unsignedNOTNULLDEFAULT'0',`unique_hits`int(11)unsignedNOTNULLDEFAULT'0');
FAQ
What is Database: How to Make a Php Hit Counter about?
It provides a structured overview of database, explains the main context, and highlights practical takeaways for readers.
Why does this topic matter?
Understanding the main concepts helps readers evaluate the issue, avoid common mistakes, and make better-informed decisions.
How should readers use this information?
Use the guidance as a practical starting point, confirm details that may have changed, and follow current product, safety, or security recommendations.
Reader Comments 0
Sign in with email or Google to join the discussion.