模拟OICQ的实现思路和核心程序(一)


Posted in PHP onOctober 09, 2006

根据许多网友需求,特地把我站的这个模拟 OICQ 的在线聊天的东西献给大家!

1 用户必须注册登陆,在数据库 userinfo 里面保存如下几个字段
Name 不用问了,这是登陆用的用户名,必须唯一
Password 登陆密码
NickName 用户昵称,也就是显示的名字
Face 存放着用户头像的编号,比如 01,代表 /images/face/01.gif 头像文件
OnlineStatus 用户是否在线的标志,在用户登陆的时候设置为 1
CurrentDate 用户最后访问/更新的时间,用于判断用户是否在线

聊天纪录 forumtalk 的结构为
CREATE TABLE forumtalk (
id int(11) NOT NULL auto_increment,
sender varchar(20) NOT NULL,
receiver varchar(20) NOT NULL,
date int(11) DEFAULT '0' NOT NULL,
readsign tinyint(4) DEFAULT '0' NOT NULL,
body varchar(200) NOT NULL,
PRIMARY KEY (id),
UNIQUE id_2 (id),
KEY id (id)
);
其中 sender 是发送人的 Name
receiver 是接受人的 Name
date 是发言的时间
readsign 发言是否已经阅读过
body 发言内容

2 显示在线用户的头像
<?
$onlineresult = mysql_query("select Name,NickName,Face,EnterTimes from userinfo where OnlineStatus=1 and CurrentDate >".(date("U")-120));
$onlinenumber = mysql_num_rows($onlineresult);
echo "欢迎光临,共有:".$onlinenumber."位朋友在线,按头像发短信息:";
for($i=0;$i<$onlinenumber;$i++)
{
if(!$onlineuser = mysql_fetch_array($onlineresult))break;
echo "<a onClick=MM_openBrWindow('shortalk.php?talkto=".$onlineuser['Name']."','".$onlineuser['Name']."','width=300,height=250')><img src='images/face/".$onlineuser['Face'].".gif' width=20 height=20 ";
if($name == $onlineuser['Name'])echo "border=1 ";
echo " title='代号:".$onlineuser['Name']."\n昵称:".$onlineuser['NickName']."\n来访:".$onlineuser['EnterTimes']."'></a>";
}
?>

其中的 onClick 用于弹出发送消息的对话窗口,大家可以在网页的源代码里面看到 

PHP 相关文章推荐
vBulletin Forum 2.3.xx SQL Injection
Oct 09 PHP
PHP array 的加法操作代码
Jul 24 PHP
两种设置php载入页面时编码的方法
Jul 29 PHP
php中base64_decode与base64_encode加密解密函数实例
Nov 24 PHP
php获得网站访问统计信息类Compete API用法实例
Apr 02 PHP
PHP中两个float(浮点数)比较实例分析
Sep 27 PHP
如何使用GDB调试PHP程序
Dec 08 PHP
利用PHP访问带有密码的Redis方法示例
Feb 09 PHP
PHP实现微信红包金额拆分试玩的算法示例
Apr 07 PHP
PHP基于递归算法解决兔子生兔子问题
May 11 PHP
PHP MVC框架中类的自动加载机制实例分析
Sep 18 PHP
通过PHP实现用户注册后邮箱验证激活
Nov 10 PHP
PHP自动更新新闻DIY
Oct 09 #PHP
模拟OICQ的实现思路和核心程序(二)
Oct 09 #PHP
层叠菜单的动态生成
Oct 09 #PHP
多数据表共用一个页的新闻发布
Oct 09 #PHP
PHP与MySQL交互使用详解
Oct 09 #PHP
3种平台下安装php4经验点滴
Oct 09 #PHP
多重?l件?合查?(二)
Oct 09 #PHP
You might like
IE与firefox之jquery用法区别
2008/10/03 Javascript
jQuery中创建实例与原型继承揭秘
2011/12/21 Javascript
点弹代码 点击页面任何位置都可以弹出页面效果代码
2012/09/17 Javascript
jquery常用操作小结
2014/07/21 Javascript
jQuery验证插件validate使用详解
2016/05/11 Javascript
jquery.validate使用详解
2016/06/02 Javascript
js实现时间轴自动排列效果
2017/03/09 Javascript
node.js 核心http模块,起一个服务器,返回一个页面的实例
2017/09/11 Javascript
利用node实现一个批量重命名文件的函数
2017/12/21 Javascript
小程序点击图片实现自动播放视频
2020/05/29 Javascript
详解node登录接口之密码错误限制次数(含代码)
2019/10/25 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
2019/12/02 Javascript
JS常见内存泄漏及解决方案解析
2020/05/30 Javascript
springboot+vue+对接支付宝接口+二维码扫描支付功能(沙箱环境)
2020/10/15 Javascript
解决Python中由于logging模块误用导致的内存泄露
2015/04/23 Python
通过Python来使用七牛云存储的方法详解
2015/08/07 Python
Selenium 模拟浏览器动态加载页面的实现方法
2018/05/16 Python
Python3 Post登录并且保存cookie登录其他页面的方法
2018/12/28 Python
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
2019/02/12 Python
Ubuntu18.04中Python2.7与Python3.6环境切换
2019/06/14 Python
python 弹窗提示警告框MessageBox的实例
2019/06/18 Python
python 函数中的内置函数及用法详解
2019/07/02 Python
Python 使用folium绘制leaflet地图的实现方法
2019/07/05 Python
Python利用 utf-8-sig 编码格式解决写入 csv 文件乱码问题
2020/02/21 Python
CSS3实现曲线阴影和翘边阴影
2016/05/03 HTML / CSS
viagogo意大利票务平台:演唱会、体育比赛、戏剧门票
2018/01/26 全球购物
以实惠的价格轻松租车,免费取消:Easyrentcars
2019/07/16 全球购物
会计电算化应届生求职信
2013/11/03 职场文书
工作迟到检讨书
2014/02/21 职场文书
学校三节实施方案
2014/06/09 职场文书
2014年库房工作总结
2014/11/26 职场文书
2014年接待工作总结
2014/11/26 职场文书
2015年度服装销售工作总结
2015/03/31 职场文书
学习雷锋精神倡议书
2015/04/27 职场文书
PostgreSQL并行计算算法及参数强制并行度设置方法
2022/04/06 PostgreSQL
三星 3nm 芯片将于第二季度开始量产
2022/04/29 数码科技