Who is Online
Mengetahui User Online dengan PHP
Langkah pertama adalah menyiapkan databasenya
CREATE TABLE dy_sessions (
session_id varchar(70) NOT NULL default ”,
session_username varchar(40) default NULL,
session_usermode varchar(5) default NULL,
session_time varchar(40) default NULL,
session_visit varchar(40) default NULL,
session_address varchar(125) default NULL,
session_page varchar(255) default NULL,
PRIMARY KEY (session_id)
)
TYPE=MyISAM;
script PHPnya
<?php
/*MySQL Host, User and Password Access Ganti nilainya sesuai dengan konfigurasi di server database kamu*/
$sqlhost=”localhost”; //MySQL host
$sqluser=”username-mu”; //MySQL user
$sqlpasswd=”password-mu”; //MySQL password
/* MySQL Database and Table PrefixDatabase ganti dengan nama database kamu*/
$sqldb=”db_member”; //database
$prefix=”member_”; //table prefix
// Sekarang lakukan Koneksi ke database MySQL
$conn=mysql_connect(“$sqlhost”,”$sqluser”,”$sqlpasswd”) or die(“<palign=center>CAN NOT CONNECT TO MYSQL SERVER”);
mysql_select_db($sqldb) or die(“Warning database not exists!”);
//Global Variable/* register global untuk variable terutama jika register_global=off */
extract($_SERVER,”EXTR_PREFIX_SAME”);
extract($HTTP_ENV_VARS,”EXTR_PREFIX_SAME”);
extract($HTTP_GET_VARS,”EXTR_PREFIX_SAME”);
extract($HTTP_POST_VARS,”EXTR_PREFIX_SAME”);
//timezone format
$gmt=date(“Z”);
//Session Time
$session_time=date(“U”);
//session ID
$session_id=session_id();
//cek apakah sudah login atau belum
if (!$HTTP_SESSION_VARS["userakses"]) {
$session_user=”Guest”;
$session_mode=”-1″;
}
else
{
$session_user=$HTTP_SESSION_VARS["userakses"];
$session_mode=$HTTP_SESSION_VARS["usermode"];
}
//mengambil record lama session dari database
$sesGet=mysql_query(“select * from “. $prefix .”sessions where session_id=’$session_id’”);
$session=mysql_fetch_array($sesGet);
//IP address
$ipaddress=$REMOTE_ADDR;
//update user session jika suda ada dan jika tidak ada bikin baru
if ($session[session_id]) {
mysql_query(“update “. $prefix .”sessions set session_time=’$session_time’, session_page=’”. $REQUEST_URI .”‘,session_username=’$session_user’, session_address=’$ipaddress’,session_usermode=’$session_mode’ where session_id=’$session_id’”);
}
else {
mysql_query(“insert into “. $prefix .”sessions(session_time,session_visit,
session_username,session_usermode,
session_id,session_address,session_page)
values(‘$session_time’,'$session_time’,'$session_user’,'$session_mode’,
‘$session_id’,'$ipaddress’,'”. $REQUEST_URI .”‘
)
“);}
//Batas Session Time
$cekSess=$session_time-300;
//Total Semua yang online
$sesGets=mysql_query(“select count(*) from “. $prefix .”sessions where session_time>=’$cekSess’”);
$session_crt=mysql_fetch_row($sesGets);
//Total online non member
$sesGetss=mysql_query(“select count(*) from “. $prefix .”sessions where session_time>=’$cekSess’ and session_usermode<=0″);
$session_crts=mysql_fetch_row($sesGetss);
//Total Online Member
$sesGetsss=mysql_query(“select count(*) from “. $prefix .”sessions where session_time>=’$cekSess’ and session_usermode>=1″);
$session_crtss=mysql_fetch_row($sesGetsss);
//Hapus session yang sudak ekspire
mysql_query(“delete from “. $prefix .”sessions where session_time<’$cekSess’”);
echo “Online $session_crt[0] : Member $session_crtss[0] – Non Member$session_crts[0]“;
?>
sumber : http://www.belajargratis.web.id/detail/detailtutorial/110/Mengetahui_User_Online_dengan_PHP/
About this entry
You’re currently reading “Who is Online,” an entry on rindra
- Published:
- November 3, 2008 / 4:02 am
- Category:
- belajar php
- Tags:
No comments yet
Jump to comment form | comments rss [?] | trackback uri [?]