All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
delphi删除数据表中的记录
确保PHP安全,不能违反的四条安全规则_php资料_编程技术
巧妙利用XSLT将XML数据转换成HTML_[XML教程]
PHP学习:字符串操作入门教程_php资料_编程技术
PHP中常用的几个 mysql 语句_[PHP教程]
优化php代码42种方法总结_[PHP教程]
用C#动态创建Access数据库_.net资料_编程技术
SQL Server两种修改对象所有者的方法_[SQL Server教程]
关于,Blog,和,RSS,的全面介绍_php资料_编程技术
visual c++中列表视图控件(List Control)
Reading number is top 10 pictures
陪睡门马睿菈自曝写真 称首拍大尺度照片1
The dog buy the ham oneself
The terra-cotta warriors2
赵惟依写真2
The real super beauty3
性感丰满身材火爆de美女1
夕阳下的北京街道
这才是真正的人体艺术2
Beauty ZhiHuiLin1
Get girl by your hand
Download software ranking
jBuilder2006
Unix video tutorial2
C#编程思想
Ashlynn Video4
Macromedia Dreamweaver 8
尖东毒玫瑰B
Unix video tutorial1
Take off clothes to survival
Tram sex maniac 2 (H) rar bag5
仙剑奇侠传98硬盘WINXP版
归海一刀 published in(发表于) 2014/2/17 7:13:53 Edit(编辑)
PHP+MYSQL实例:网站在线人数的程序代码_[PHP教程]

PHP+MYSQL实例:网站在线人数的程序代码_[PHP教程]

PHP+MYSQL实例:网站在线人数的程序代码_[PHP教程]

PHP实例教程:网站在线人数的程序代码,后台有MYSQL数据库支持。可以直接统计出网站当前的在线人数。


首先是创建MYSQL数据库表。


CREATE TABLE tablename (
field type(max_length) DEFAULT 'default_value' (NOT) NULL
}


可以使用的SQL语句。


CREATE TABLE useronline (
timestamp int(15) DEFAULT '0' NOT NULL,
ip varchar(40) NOT NULL,
file varchar(100) NOT NULL,
PRIMARY KEY (timestamp),
KEY ip (ip),
KEY file (file)
);


下面我们开始使用PHP脚本,首先定义MYSQL的信息。


server = "localhost"; //你的服务器
db_user = "root"; //你的mysql的用户名
db_pass = "password"; //你的mysql的密码
database = "users"; //表的名字


设置统计的时间(多少秒内在线人数)


timeoutseconds = 300;


取当前时间。


timestamp = time();


上面的完整代码:


server = "localhost"; //your server
db_user = "root"; //your mysql database username
db_pass = "password"; //your mysql database password if any
database = "users"; //the db name
timeoutseconds = 300;//timeoutseconds limit
//get the current time
timestamp = time();
//calculate the lowest timestamp allowed
timeout = timestamp-timeoutseconds;
?>


连接mysql


mysql_connect('localhost', 'username', 'password');


也允许使用变量形式。


mysql_connect(server, db_user, db_pass);


如果mysql数据库没有密码的话可以使用下面代码连接(当然建议大家一定要设置好自己的密码,这样起码黑客得要解密啊)


mysql_connect(server, db_user);


查询数据库的代码:


mysql_db_query('database', 'query');


我们只要有访客就要增加一条记录。


insert = mysql_db_query(database, "INSERT INTO useronline VALUES
('timestamp','"._SERVER['REMOTE_ADDR']."','"._SERVER['PHP_SELF']."')");


然后我们给出如果用户用错误信息的处理方式。


if(!(insert)) {
print "Useronline Insert Failed > ";
}


然后我们得实现当超过我们设置的时间我们就要删除该用户记录。


delete = mysql_db_query(database, "DELETE FROM useronline WHERE timestamp

同样给出删除记录出错的处理。


if(!(delete)) {
print "Useronline Delete Failed > ";
}


下面我们显示数据库中有多少个不同的IP


result = mysql_db_query(database, "SELECT DISTINCT ip FROM useronline WHERE file='"._SERVER['PHP_SELF']."' ");


我们使用


mysql_num_rows(query);


来统计用户,代码如下。


user = mysql_num_rows(result);


最后我们要关闭数据库。


mysql_close();


显示在线的人数。


if(user == 1) {
print("1 user online\n");
} else {
print("user users online\n");
}


最终把上面代码写成一个PHP文件如下。


//Put your basic server info here
server = "localhost"; //normally localhost
db_user = "root"; //your MySQL database username
db_pass = "password"; //your MySQL database password
database = "users";
timeoutseconds = 300; //it will delete all people which haven't refreshed(so probbably are
// offline or inactive) in timieoutseconds time (so it actually checks the people that are active in the last
// timeoutseconds seconds)
//this is where PHP gets the time
timestamp = time();
//counts the timeout, all people which have been seen last online in earlier than this timestamp, will get removed
timeout = timestamp-timeoutseconds;
//connect to database
mysql_connect(server, db_user);
//add the timestamp from the user to the online list
insert = mysql_db_query(database, "INSERT INTO useronline VALUES
('timestamp','"._SERVER['REMOTE_ADDR']."','"._SERVER['PHP_SELF']."')");
if(!(insert)) {
print "Useronline Insert Failed > ";
}
//delete the peoples which haven't been online/active in the last timeoutseconds seconds.
delete = mysql_db_query(database, "DELETE FROM useronline WHERE timestampif(!(delete)) {
print "Useronline Delete Failed > ";
}
//select the amount of people online, all uniques, which are online on THIS page
result = mysql_db_query(database, "SELECT DISTINCT ip FROM useronline WHERE file='"._SERVER['PHP_SELF']."' ");
if(!(result)) {
print "Useronline Select Error > ";
}
//Count the number of rows = the number of people online
user = mysql_num_rows(result);
//spit out the results
mysql_close();
if(user == 1) {
print("1 user online\n");
} else {
print("user users online\n");
}
?>







添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.