找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1960|回复: 1

[教程] PHP百行代码快速构建简易聊天室

[复制链接]
发表于 2013-4-6 10:39:21 | 显示全部楼层 |阅读模式 来自 中国–广东–湛江
  1. 无聊情况下,看能用比较少的代码构建聊天室,一开始写了整整100行把聊天室内完成,后来觉得很多功能没有,又重新修改,加了不少代码。其实不利用特别复杂的技术,比如模板、数据库等等,一样能做比较不错的聊天室,适合个人使用。
  2. 基本功能:能登陆,聊天,记录在线人数IP事件,能控制聊天的字体颜色,自动把转化聊天中网址为链接地址,能定制聊天室标题、广告信息等等。使用文本作为存储媒体,又兴趣可以参考代码,并且进行扩展。
  3. 其实PHP作为快速开发的脚本语言是很棒的!
  4. ===代码===
  5. <?php
  6. /**
  7. * 黑夜路人简易聊天室
  8. * 作者: heiyeluren
  9. * 再次发布: PHP100中文网
  10. */
  11. error_reporting(7);
  12. session_start();
  13. header('ContentType:text/html;charset=gb2312');
  14. define('SCRIPT', $_SERVER['SCRIPT_NAME']);
  15. define('CHAT_NOTE', './chat.txt');
  16. define('ONLINE_LIST', './online.txt');
  17. define('REF_TIME', 5);
  18. define('CHAT_NAME', '黑夜路人聊天室');
  19. define('AD_MSG', '今天是中国情人节, 祝大家情人节快乐!!');
  20. //获取值
  21. if (isset($_GET['action']) && !empty($_GET['action'])) {
  22. $action = $_GET['action'];
  23. }
  24. //如果已经登陆那么直接跳到聊天界面
  25. if (!isset($_GET['action']) && isset($_SESSION['username'])) {
  26. header('location:'.SCRIPT.'?action=chat');
  27. }
  28. //登陆提示
  29. if (!isset($_GET['action']))
  30. {
  31. if (!session_is_registered('username'))
  32. {
  33.    echo ' <p><h3 align=center>[ '.CHAT_NAME.' ] &copy; 2005</h3></p>
  34.     <p align=center>
  35.     <form action='.SCRIPT.'?action=login method=post>
  36.     呢称: <input type=text size=25 maxlength=30 name=login_user>
  37.     <input type=submit value=聊天>
  38.     </form></p>
  39.     ';
  40.    exit;
  41. }
  42. }
  43. //校验登陆
  44. if ($action=='login')
  45. {
  46. if (isset($_POST['login_user']) && !empty($_POST['login_user'])) {
  47.    $username = $_POST['login_user'];
  48. } else {
  49.    $username = '游客';
  50. }
  51. session_register('username');
  52. save_online($username, get_client_ip());
  53. header('location:'.SCRIPT.'?action=chat');
  54. }
  55. //开始聊天www.php100.com
  56. if ($action=='chat')
  57. {
  58. $online_sum = get_online_sum();
  59. echo '<head><title>[ '.CHAT_NAME.' ]</title></head><center><body bgcolor=#C4BFB9 style='font-size:12px;'>
  60.     <div style='border:1px solid #999966; width:802px;height:450'><iframe src=''.SCRIPT.'?action=show' name=show_win width=800 height=450 scrolling=auto frameborder=0></iframe></div>

  61.     <marquee width=70% scrollamount=2> '.AD_MSG.' </marquee>   [当前在线:$online_sum]
  62.     <iframe src=''.SCRIPT.'?action=say' name=say_win width=800 height=60 scrolling=no frameborder=0>
  63. ';
  64. }
复制代码

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2013-4-6 10:58:56 | 显示全部楼层 来自 中国–浙江–嘉兴–海宁市
呵呵 大哥 不能用哦~~
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /www/web

评分

参与人数 1金币 +5 收起 理由
抢楼评分专号 + 5 很幸运,你获得了抢楼奖励!

查看全部评分

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-11-25 15:08 , Processed in 0.055271 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表