Logo
Number Users Currently Online
Online Now: 0

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Snippets Functions Classes

Home | PHP Resources | MySQL Zipbase | Forums

Snippet Code
This code uses a database to check the number of users that are online within a current time period.

Database Set Up



Database Name:    active_sessions

            ip        session        date
        +--------+-----------+---------+
NULL    |   NO   |    YES    |   YES   |
        +--------+-----------+---------+
DEFAULT |        |    NULL   |   NULL  |
        +--------+-----------+---------+
        

onlineNow.php


<?php
session_start
();
include
"db.php"# Connect To the database
$active_sessions 0;
$minutes 5# period considered active
if($sid session_id()) # if there is an active session
{
    
# DB connect here
    
$ip $_SERVER['REMOTE_ADDR']; # Get Users IP address
    # Delete users from the table if time is greater than $minutes
    
mysql_query("DELETE FROM `active_sessions` WHERE 
    `date` < DATE_SUB(NOW(),INTERVAL $minutes MINUTE)"
)or die(mysql_error()); 
    
    
# Check to see if the current ip is in the table
    
$sql mysql_query("SELECT * FROM active_sessions WHERE ip='$ip'");
    
$row mysql_fetch_array($sql);
    
# If the ip isn't in the table add it.
    
if(!$row){
        
mysql_query("INSERT INTO `active_sessions` (`ip`, `session`, `date`) 
        VALUES ('$ip', '$sid', NOW()) ON DUPLICATE KEY UPDATE `date` = NOW()"
)or die(mysql_error());
    }
    
# Get all the session in the table
    
$sessions mysql_query('SELECT * FROM `active_sessions`')or die(mysql_error());
    
# Add up all the rows returned
    
$active_sessions mysql_num_rows($sessions);
}
    
# Print the final result
    
echo'<b>Online Now: </b>'.$active_sessions;
?>
 
Snippet Comments

Add Your Comment

Anonymous
2009-08-20 00:00:00
As long as we're being grammatically correct, we'd might as well be concise. It is a special case, after all. $out = 'There is 1 user online.';
nukturnal
2008-08-18 00:00:00
This is really sweet! You are a life saver
Andrew.West
2008-07-07 00:00:00
Also so you don't have to have improper grammar when you call one active session. I.E. There are 1 users online. It should be There is 1 user online.

if ($active_sessions == '1') {
$out = 'There is '.$active_sessions.' user online.';
} else {
$out = 'There are '.$users_sessions.' users online.';
}


Frogman_544
2007-04-12 00:00:00
This is a MUSTHAVE on portals... very nice.
Admin
2007-03-29 00:00:00
$sid is defined in the if statement.

It holds the session file name, the one that is stored on your server. If you have access to see the stored sessions, then it is usually in the temp folder.
proyardservice AT yahoo DOT com
2007-03-29 00:00:00
i dont see where $sid is defined, any want to tell me what is in that variable? thanks
Doomedelite
2007-02-18 00:00:00
Anything for sqlite soon? It's amazing, and I need tips!
Vini
2007-02-23 00:00:00
hi Need The SQL database Thingy

Add Your Comment

 
Snippet Tools
Rate this Snippet:

Rate the difficulty level:

Request Snippet Update


Suggested Difficulty Level: Intermediate
Current Score: 2.89
Total votes: 294
Total Views: 4683

Other top snippets by admin:

1. JPG to ASCII Converter
2. Add (th, st, nd, rd, th) to the end of a number
3. Dynamic Page Content From Links
4. AJAX Quickie
5. Simple Image CAPTCHA

Search

Input key terms:
User Panel

User name:

Password:

Register And Post Your Own Snippets

Snippets On Watch

1.  Auth Class with (2.83 of 87)

2.  Test Please Delete (2.83 of 30)

3.  Return all repeated (3.64 of 72)

4.  Convert an integer (3.3 of 71)

5.  URL Shortening for (2.75 of 52)

6.  Monthly Content Sorting (3 of 45)

7.  Show String Trimmed (2.97 of 65)

8.  Human readable file (2.01 of 70)

9.  Randomize array values (2.8 of 82)

10.  Create a recursive (3.35 of 55)

New Snippets

1.  Parse RFC822 date (4 of 1)

2.  Dynamic Image Uploading (5 of 1)

3.  Spam Filter (0 of 0)

4.  Is Multiple (0 of 0)

5.  Base64 Encode / (0 of 0)

6.  URL Encode / (0 of 0)

7.  temp openbills (0 of 0)

8.  Php Iban Validator (0 of 0)

9.  Mysql Table Builder (0 of 0)

10.  File size of (1.75 of 4)

11.  Mail from your (1 of 1)

12.  OddEven Class (0 of 0)

13.  Detect if a (1 of 1)

14.  MB CopyMCF-DIR :: (5 of 1)

15.  Upper/Lower Case Accented (0 of 0)

16.  Zodiac Signs (3 of 1)

17.  Really useful code (2.5 of 2)

18.  Calculate Central European (0 of 0)

19.  Email Attachment (4 of 1)

20.  ImageMagick Image Upload (0 of 0)

21.  convert plain html (2 of 2)

22.  Tag Builder (3.25 of 4)

23.  Get Inserted ID (4.33 of 3)

24.  Watermark An Image (3.33 of 3)

25.  Check Prime Numbers (1.5 of 8)

Home | Forum | Free PHP Web Hosting | Contact | Terms & Conditions |  
Donate
PHPSnips.com - ©2010