| 网站首页 | 文章中心 | 电子书下载 | 矢量图库 | 视频教程 | 素材下载 | 程序代码下载 | JS代码 | 论坛 | 
常用软件类:
|杀毒安全 |联络聊天 |网络软件 |多媒体类 |系统工具 |图形图像 |系统工具 |应用软件 |行业软件
开发设计类:
|动画制作 |图像处理 |3D设计 |操作系统 |站长学院 |网络相关 |WEB设计 |数据库类 |程序开发
PHP+MySQL的聊天室设计
作者:佚名    文章来源:网络    点击数:    更新时间:2006-11-19
 

 

  本代码段的任务是将表chat中的数据取出,显示在页框中。每次刷新时,取数据库中最近的15条发言。同时,为防止数据库无限增大,需设计删除陈旧数据的功能。代码如下

  <html>
  <head>
  <title>显示用户发言</title>
  <meta http-equiv="refresh" content="5;url=cdisplay.php">
  </head>
  <body>
  <?
  =mysql_connect("main","root");
  //链接Mysql服务器 服务器名为main,管理员名为root
  mysql_select_db("abc"); //选择数据库
  ="select * from chat ORDER BY chtime;" ; //查询字符串
  =mysql_query(, ); //送出查询
  =mysql_num_rows(); //取得查询结果的记录笔数
  //取得最后15笔发言,并显示
  @mysql_data_seek(,-15); //移动记录指针到前15笔记录
  if (<15) =; else =15; //记录总数小于15,则最多为该记录数
  for (=1;<=;++) {
  list(,,)=mysql_fetch_row();
  echo ; echo " ";echo ; echo":" ; echo ; echo "<BR>";
  }
  //清除库中过时的数据
  @mysql_data_seek(,-20); //移动记录指针到前20笔记录
  list()=mysql_fetch_row();
  ="DELETE FROM chat WHERE chtime<@#@# ;" ;
  =mysql_query(,); //送出查询字符串,库中只留前20个记录
  mysql_close();
  ?>
  </body>
  </html>

  2.4 送出发言到数据库speak.php

  <html>
  <head>
  <title>发言</title>
  </head>
  <body>
  <?
  If ()
  { =mysql_connect("main","root");
  mysql_select_db("abc"); //数据库名为abc
  =date(y).date(m).date(d).date(h).date(i).(date(s); //取得当前时间
  ="INSERT INTO chat(chtime,nick,words) values
  (@#@#,@#@#,@#@#);" ;
  mysql_query(,); //送出发言到数据库
  mysql_close();
  }
  ?>
  //输入发言的表单
  <form action="speak.php" method="post" target=" _self">
  <input type="text" name="words" cols="20">
  <input type="submit" value="发言">
  </form>
  </body>
  </html>

  完成以上工作后,一个简单的聊天室制作就完成了。当然,设计者可以根据个人爱好做一些个性化设计,如增加一个页框,显示当前聊天室人员名单、增加发言表情、取得发言者IP、进一步美化页面等等。

上一页  [1] [2] 


相关文章