PHP处理在线用户
转贴自: http://hi.baidu.com/isnono/blog/item/3c94ea11a54a0fc7a7ef3f94.html
经常在CSDN的PHP论坛上看到有朋友问处理在线用户的问题,我写过类似的代码,就拿出来献丑了,有点垃圾,基本上实现了功能, 同是也能够扩展,比如同时只允许一个帐号在线等。
/*
程序用途:检测在线用户
程序作者:heiyeluren
写作时间:2004/6
*/
<? session_cache_limiter("private,max-age=10800"); ?>
<? @session_start(); ?>
<? include("Function.php"); ?>
<? include("ConnDB.php"); ?>
<? include("Const.php"); ?>
<?php
//在线用户处理
if (isset($user_name))//如果session写了,那么用户已经登陆
{
$result = mysql_query("SELECT * from aliang_online WHERE OnlineUser = '$user_name' ") or die($die_msg."用户有没有写入在线列表");
//查询看看用户有没有写入在线列表
$num = mysql_num_rows($result);
if ($num != 0) //如果已经写入了在线列表,就更新最后在线时间和状态
{ //$now_time是自定义的一个常量,代表现在时间的时间戳,该常量在const.php中设置
mysql_query("UPDATE aliang_online SET LastTime = $now_time,UserState = 1 WHERE OnlineUser = '$user_name' ") or die($die_msg."如果写了,那就更新时间");
}
else //如果用户没有在在线列表,那么就把该用户写入在线用户列表
{
mysql_query("INSERT INTO aliang_online SET OnlineUser = '$user_name' , LoginIP = '$REMOTE_ADDR' , LoginTime = $now_time , LastTime = $now_time , UserState = 1 ") or die($die_msg."如果没有写,那就写");
}
}
else //如果用户没有登陆,或者是访客,那么就使用IP地址来定位是否已经在在线列表
{
$result = mysql_query("SELECT * from aliang_online WHERE LoginIP = '$REMOTE_ADDR' ") or die($die_msg."如果是访客,就看看有没他IP");
$num = mysql_num_rows($result);
if ($num != 0) //如果访客的IP地址已经在列表中了,那么就更新访客最后时间和状态
{
mysql_query("UPDATE aliang_online SET LastTime = $now_time,UserState = 1 WHERE LoginIP = '$REMOTE_ADDR' ") or die($die_msg."如果有IP,就更新他的时间");
}
else &
相关文档:
需求:
需要对两个目录中的文件内容进行查找替换,两个目录查找替换的内容不一样。
实现中注意几点:
(1)函数递归调用,来检索子目录;
(2)函数名可以以参数形式传递;
(3)用?进行非贪婪匹配;
......
虽然本人没有验证过,不过据说通过ADODB访问Oracle对性能影响很小.而且ADODB比OCI8也要方便很多,毕竟许多东西都再次封装过.不过不管怎么说这都在中间又加上了一层,理论上来说出现问题的几率和解决问题的难度都变大了.而Oracle又经常用在不能随便出问题的环境,所以想必想要直接使用OCI的情况也不少.以下就是我的例子:
<?p ......
<?php
if(empty($_GET[submit]))
{
?>
<form enctype="multipart/form-data" action="<?php $_SERVER['PHP_SELF']?>?submit=1" method="post">
<input name="filename" type="file">
<input type="submit" value="确定上传">
</form>
<?php
}
else{
......
接收xml:
$xml = file_get_contents('php://input');
发送(post):
$xml_data = <xml>...</xml>";
$url = http://dest_url;
$header[] = "Content-type: text/xml";//定义content-type为xml
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_ ......