基于php的聊天室编程思想

2016-01-29 13:38 5 1 收藏

基于php的聊天室编程思想,基于php的聊天室编程思想

【 tulaoshi.com - PHP 】

基于PHP的聊天室编程思想     drate [转贴] 
关键字   PHP,聊天室
出处   http://www.phpx.com
 
 
聊天室编程思想-- 大门--登陆

发表于:中国PHP联盟 www.phpx.com 作者/来源:php2000/php2000.com 人气:2768

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/php/)


大门--登陆
2000年09月04
1 页面登陆的基本要素
你可以在我的竹叶看到登陆 的表单,这里提供了最基本的登陆表单项
(1)登陆表单
<form method=POST name=chatform action=chat/login.php?action=enter onSubmit="b1_submit();return true;" target="howtodo"
(a)聊天表单的名字为chatform,我使用action=enter作为进入聊天室的入口,如果没有这个参数,则显示登陆页 面.
(b)在表单提交时,先调用b1_submit()建立聊天的窗口
(c)聊天的目标窗口为b1_submit()建立 的howtodo窗口

(2)表单项
昵称:<input type=text name=name size=15 maxlength="10"
密码:<input type=password name=pass size=15 maxlength="10"
<input type=submit name=submit value=登陆 style="width:100"
<input type=reset name=reset value=重添 style="width:50"
(a)各表单项一定要设定最大允许长度 maxlength

(3)建立聊天窗口的js
<script LANGUAGE="javascript"
function b1_submit(){
chat=window.open('',"howtodo",'Status=no,scrollbars=no,resizable=no');
chat.moveTo(0,0);
chat.resizeTo(screen.availWidth,screen.availHeight);
chat.outerWidth=screen.availWidth;
chat.outerHeight=screen.availHeight;
}
这段代码先 打开一个没有状态栏,滚动条,可调整尺寸的howtodo窗口!然后移动到屏幕左上角,然后放大到允许的屏幕大小.

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/php/)

 

 聊天室编程思想--大门 -- 通行证

发表于:中国PHP联盟 www.phpx.com 作者/来源:php2000/php2000.com 人气:2087


大门 -- 通行证
2000年09月04
聊天室可以采用完全自由的方式运行,你可以随意 输入呢称,不用密码,不保存你的聊天状态,优点是:自由,非常适合于游客!另外一个方法是注册聊天室,每个进入 聊天室的人都要输入自己的用户名和密码才能进入!优点:充分体现个性,非常适合于老朋友,他们的呢称不会被 人恶意侵占使用.我的聊天室使用注册方法!

注册通常采用2种方法:1,先注册然后进入聊天;2,自动注 册,然后在里面修改自己的资料!我采用第2种方法!!每个新进入的聊友的用户名会被自动保存到注册到数据库内 ,下次登陆必须输入准确的密码才能进入!

下面是判断部分!本程序使用文本数据库 !

file://$useronline为在线人的数据文件名称
file://$useronlinelock为在线人的锁定标志
file://$register为已经注册的数据文件名称
file://$registerlock为注册文件的锁定标志
file://$split为分隔 符

file://登陆参数 enter
if($action == "enter")
{
file://当前时间秒数
$timecurrent = date("U");

file://锁定在线人数文件,防止同时修改同一个文件
while( file_exists($useronlinelock))
{
if(!file_exists($useronlinelock))
{
break;
}
}

file://创建临时文件
fclose(fopen($useronlinelock,"w"));

file://读入在线用户和已经注册用户的信息:密码,昵称,更新时间
$useronline = file($useronline);
$register = file($register);

file://用于判断登 陆是否成功的标志
$namesign=0;

file://判断用户名,密码的错误,用户名不允许为空,不允许超过10 个字符,密码不允许超过20个字符
if(($name =="") || (strlen($name) 10) || (strlen($pass) 20) )
{
print("没有昵称或密码过长");
file://登陆失败
$namesign=1;
file://删除临时文件
unlink($useronlinelock);
}
else
{
file://查找是否已经有人注册或者密码错误
$foundsign=0;
for($i=0;$i<count($register);$i++)
{
file://分割
$tempregister = split($split,$register[$i],99);
file://找到已经注册的用户名
if( $name == $tempregister[0] )
{
file://已经找到标志
$foundsign=1;
file://密码正确吗
if($pass != $tempregister[1])
print("密码错了!");
file://登陆失败
$namesign=1;
unlink($useronlinelock);
break;
}
else
{
file://老用户登陆成功
$namesign=0;
break;<

来源:https://www.tulaoshi.com/n/20160129/1490920.html

延伸阅读
标签: PHP
  #  相应的  数据库 # phpMyAdmin MySQL-Dump # http://phpwizard.net/phpMyAdmin/ # # 主机: localhost:3306 数据库 : study28 # -------------------------------------------------------- # # 数据表的结构 'chat_user' # CREATE TABLE chat_user (    userid varchar(20) NOT NUL...
标签: PHP
  聊天室可以采用完全自由的方式运行,你可以随意输入呢称,不用密码,不保存你的聊天状态,优点是:自由,非常适合于游客!另外一个方法是注册聊天室,每个进入聊天室的人都要输入自己的用户名和密码才能进入!优点:充分体现个性,非常适合于老朋友,他们的呢称不会被人恶意侵占使用.我的聊天室使用注册方法! 注册通常采用2种方法: ...
标签: PHP
  //第一个页面  name="index1.php" <? include "../signup/mysql.php"; $time1=time(); //$userid=983530409; echo $n; if($n==1){ $userid=time(); $nick="g".$userid; $last_time=$userid; $sql="insert into chat_user (userid,id,last_time) values ('$userid','$ni...
标签: PHP
  //第二页面 name="frame2.php" <? include "../signup/mysql.php"; header("Expires: Sun, 28 Dec 1997 09:32:45 GMT"); header("Cache-Control: no-cache, must-revalidate"); header("Pragma: no-cache"); header("Content-Type: text/html; charset=${Charset}&...
标签: PHP
  第三个页面 name="frame3.php" <? include "../signup/mysql.php"; //echo $userid; //echo $private; if($p)$p=1; else $p=0; if(($action="ok")and($p)){ $sql="select userid,id from chat_user_list where userid='$userid'"; $result=mysql_query($sql); $roww=mysql_fe...

经验教程

259

收藏

27
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部