?
Solved

visitor counter for specific page

Posted on 2010-11-28
7
Medium Priority
?
364 Views
Last Modified: 2012-05-10
i want to show how many people are currently viewing the website and how many people are currently viewing the specific page user has opened.

i do have script for showing status for current visitors on website, but i am not sure how to display number of visitors viewing the specific page a particular user is displaying.
0
Comment
Question by:nandananushil1
  • 4
  • 3
7 Comments
 
LVL 3

Accepted Solution

by:
roynaufal earned 1000 total points
ID: 34224852
check out this link, very straightforward and clear tutorial:
http://www.webdesign.org/web-programming/php/php-live-counter-online-users.8622.html

the concept in that is based on a user's ip, you can alternatively use session ids to be even more accurate (in case several people are on the same network, the website sees them coming from the same ip)
0
 
LVL 111

Assisted Solution

by:Ray Paseur
Ray Paseur earned 1000 total points
ID: 34225382
To get accurate counts (the kind that are useful for client measurement and reporting) you might want to use Google Analytics.

If you have a script showing the status of current visitors, it is almost certainly giving you an approximation.  The reason is that you have no way of knowing when a visitor "leaves" your site.  That's the nature of the client-server model.  A client makes a request and the server responds.  End of story.

You might make a reasonable assumption, like saying "anyone who loads a page on my site will remain on the page for 1 minute" and then you can write the programming this way...

Create the "activeUsers" table with DATETIME, pageName, userId

At page load time, start the session FIRST and then retrieve the session id. http://us2.php.net/manual/en/function.session-id.php
INSERT into activeUsers the values of NOW(), $_SERVER["PHP_SELF"], and the session id.
DELETE FROM activeUsers WHERE the DATETIME column is more than 1 minute old.
SELECT COUNT(*) FROM activeUsers WHERE pageName = $_SERVER["PHP_SELF"] - to get the count of users on this page.
SELECT COUNT(*) FROM activeUsers with no WHERE clause - to get the count of users on the site.

This table will never be very big, and these four queries will be so fast you will never even notice the time it takes to run them.
0
 
LVL 3

Expert Comment

by:roynaufal
ID: 34225399
yea, just like the above link, then you add a way to delete the entries based on that assumption

for live analytics, i would suggest woopra.com
it's one of the best live
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 111

Expert Comment

by:Ray Paseur
ID: 34225520
Interesting -- I had never heard of woopra.  What makes it stand out from Google Analytics?
http://www.woopra.com/plans/
0
 
LVL 3

Expert Comment

by:roynaufal
ID: 34225547
woopra shows the analytics live,
last time i checked google analytics was not live...not sure nowadays though
0
 
LVL 111

Expert Comment

by:Ray Paseur
ID: 34225563
Yeah, looks like it has a nice-looking dashboard, too.  GA is historical.
0
 
LVL 3

Expert Comment

by:roynaufal
ID: 34225577
yea, try it out :)
0

Featured Post

[Webinar] Database Backup and Recovery

Does your company store data on premises, off site, in the cloud, or a combination of these? If you answered “yes”, you need a data backup recovery plan that fits each and every platform. Watch now as as Percona teaches us how to build agile data backup recovery plan.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

It’s a season to be thankful, and we’re thankful for users like you who engage on site, solve technology problems, and network with others in the industry. What tech are we most thankful for? Keep reading.
The title says it all. Writing any type of PHP Application or API code that provides high throughput, while under a heavy load, seems to be an arcane art form (Black Magic). This article aims to provide some general guidelines for producing this typ…
The viewer will learn how to dynamically set the form action using jQuery.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …
Suggested Courses

571 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question