模拟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 相关文章推荐
php中截取字符串支持utf-8
Jan 18 PHP
php 数组的合并、拆分、区别取值函数集
Feb 15 PHP
php下过滤html代码的函数 提高程序安全性
Mar 02 PHP
php的memcache类分享(memcache队列)
Mar 26 PHP
PHP实现的简单mock json脚本分享
Feb 10 PHP
php使用iconv中文截断问题的解决方法
Feb 11 PHP
Laravel 5框架学习之Blade 简介
Apr 08 PHP
Yii2前后台分离及migrate使用(七)
May 04 PHP
PHP socket 模拟POST 请求实例代码
Jul 18 PHP
PHP获取不了React Native Fecth参数的解决办法
Aug 26 PHP
js基于qrcode.js生成二维码的方法【附demo插件源码下载】
Dec 28 PHP
thinkphp3.2.0 setInc方法 源码全面解析
Jan 29 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
PNGHandler-借助JS让PNG图在IE下实现透明(包括背景图)
2007/08/31 Javascript
defer属性导致引用JQuery的页面报“浏览器无法打开网站xxx,操作被中止”错误的解决方法
2010/04/27 Javascript
Jquery 获取checkbox的checked问题
2011/11/16 Javascript
node.js中的path.basename方法使用说明
2014/12/09 Javascript
小米公司JavaScript面试题
2014/12/29 Javascript
全面理解JavaScript中的闭包
2016/05/12 Javascript
jQuery插件formValidator实现表单验证
2016/05/23 Javascript
AngularJS过滤器filter用法总结
2016/12/13 Javascript
微信小程序 利用css实现遮罩效果实例详解
2017/01/21 Javascript
JS中把函数作为另一函数的参数传递方法(总结)
2017/06/28 Javascript
使用Bootrap和Vue实现仿百度搜索功能
2017/10/26 Javascript
解决vue处理axios post请求传参的问题
2018/03/05 Javascript
JavaScript设计模式之工厂模式和抽象工厂模式定义与用法分析
2018/07/26 Javascript
微信小程序实现即时通信聊天功能的实例代码
2018/08/17 Javascript
解决layer弹出层自适应页面大小的问题
2019/09/16 Javascript
微信小程序关键字变色实现代码实例
2019/12/13 Javascript
解决ant design vue 表格a-table二次封装,slots渲染的问题
2020/10/28 Javascript
vue中实现点击空白区域关闭弹窗的两种方法
2020/12/30 Vue.js
Python 基础教程之包和类的用法
2017/02/23 Python
Django中Model的使用方法教程
2018/03/07 Python
Linux系统(CentOS)下python2.7.10安装
2018/09/26 Python
Python时间和字符串转换操作实例分析
2019/03/16 Python
pandas进行时间数据的转换和计算时间差并提取年月日
2019/07/06 Python
Python 控制终端输出文字的实例
2019/07/12 Python
解决Tensorflow 内存泄露问题
2020/02/05 Python
tensorflow从ckpt和从.pb文件读取变量的值方式
2020/05/26 Python
Python dict的常用方法示例代码
2020/06/23 Python
使用OpenCV实现人脸图像卡通化的示例代码
2021/01/15 Python
纯css3实现图片翻牌特效
2015/03/10 HTML / CSS
CSS3实现全景图特效示例代码
2018/03/26 HTML / CSS
豪华床上用品 :Jennifer Adams
2019/09/15 全球购物
查询优化的一般准则有哪些
2015/03/08 面试题
工作年限证明模板
2014/11/01 职场文书
2015年“7.11”世界人口日宣传活动方案
2015/05/06 职场文书
小学一年级语文教学反思
2016/03/03 职场文书
各类场合主持词开场白范文集锦
2019/08/16 职场文书