当前位置: 首页 > 图文教程 > 网络编程 > PHP > 采用行写方式的聊天程序(之一)

PHP
MYSQL版本大于4.1问题 - PHPchina
怎么让用户点击一个连接后,把一个图片另存了 - PHPchina
武汉10月15日Phper聚会召集!!! - PHPchina
php如果不等待exec执行的程序创建的子进程? - PHPchina
哪位知道DISCUZ处理防SQL注入的代码是哪部分 - PHPchina
求教!我实在不知道哪里问题,在线等ing - PHPchina
怎样结束用户某一进程 - PHPchina
比对用户名密码能不能这样写? - PHPchina
求助:如何在PHP+mysql中实现数据备份? - PHPchina
大家看看这个配置对吗 - PHPchina
如何禁止require当前文件 - PHPchina
无法将回调函数放在类中? - PHPchina
村里 PHP代码高亮是怎么实现的? - PHPchina
apache安装后.服务里没有apache2这个服务! - PHPchina
请教一个小问题 - PHPchina
config.php里面是不是应该把多数参数设置为常量而不是变量? - PHPchina
请教高手一个问题 - PHPchina
如何让百度收录我的网站 ?? - PHPchina
谁能给个注入的简单语句? - PHPchina
求PHP站内搜索思路 - PHPchina

PHP 中的 采用行写方式的聊天程序(之一)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 52 ::
收藏到网摘: n/a

   
    前阶段,看到[email protected]和稻香居的红蜻蜓的极小版的聊天程序,仔细阅读了他们的代码,感到这是一篇不可多得的代码,特别是对刚入门者,程序里用到了一些技巧,极有参考价值。本人根据他们的代码,结合自己的体会,增加了一些功能(在线人员的管理等),实现方法也从TXT改为MYSQL,所有程序在本地全部调试通过,希望拥有自己聊天程序的网友可以直接使用。等本人的个人主页全部完成之后,将与论坛结合使用(论坛已经全部安装完成,其他内容也将完成从chinaren到oso迁移),开辟一个oracle与mysql数据库管理员的信息讨论栏。
论坛信息表:
create table lt_t_online  /* 记录在线人员信息 */
(  /* 名称,最后发言时间,IP地址,状态(0在线 1脱机)  */
    lt_username  varchar(12)               not null,  
    lt_lasttime  datetime                  not null,
    lt_addrip    varchar(20)                   null,
    lt_state     char(1)                   not null     
);

create table lt_t_content  /* 聊天信息表  */
(  /* 发言人,对象,密级,表情,颜色,内容,时间  */
    lt_speaker      varchar(12)               not null,
    lt_speaked      varchar(12)               not null,
    lt_secrecy      char(1)                   not null,     
    lt_face         smallint                      null,
    lt_color        varchar(6)                    null,
    lt_content      varchar(200)              not null,
    lt_time         datetime                  not null
);
.
程序由五部分组成:
lt1.php 主程序,使用方法 lt1.php?name=dfds,为测试方便,没有编写登录界面,直接带参数使用。
ltsayno.php:发言主窗口,有关函数调用全部集中在这里
lt3.php:发言提交时调用,立刻刷新发言记录
lt4.php:发言刷新区,在该区定时刷新发言数据
ltonline.php:在线人员信息统计
g_fun.php:全局参数和函数信息
以下为所有程序代码:
g_fun.php:
<?
function f_connectdb() {
  global $dbh;
  $dbh =  mysql_connect('localhost:3306','root','');
  mysql_select_db('test');  
}

?>  

【本文版权归作者与奥索网共同拥有,如需转载,请注明作者及出处】