文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>聊天室技术(五) -- 指挥中心

聊天室技术(五) -- 指挥中心

时间:2007-02-17  来源:PHP爱好者

这里是聊天室的指挥中心,所有的指令都要在这里发出 1下面是基本的发送表单代码 <form name=inputform action='messagesend.PHP' target='bl' onsubmit='return(checksay());' method=POST> <?
//下面的2个参数用于验证信息的正确性
print("<input type='hidden' name='name' value='$name'>n");
print("<input type='hidden' name='pass' value='$pass'>n");
?> //聊天对象,注意加上 readonly 属性
<input type="text" name="talkto" size="10" maxlength="20" readonly value="所有人"> //上次聊天的发送内容
<input type='hidden' name='message' value=''> //发送的表单文本框
<input type="text" name="msg" maxlength="120" size="34"> <input type="submit" name="Submit" value="发送"> </form> 2 检查发送内容的js var dx ='';
function checksay( )
{ //不允许发送空的发言
if(document.inputform.msg.value=='')
{
document.inputform.msg.focus();
return false;
} //不允许重复发言,内容相同,对象相同
if ((document.inputform.msg.value==document.inputform.message.value)&&(document.inputform.talkto.value==dx))
{
alert('发言不能重复');
document.inputform.msg.focus();
return false;
} //两次发言内容的间隔不能小于1秒,或者发言字数大于间隔*3
t2=(new Date()).getTime()/1000;
if(((t2-t1)<1)||((t2-t1)*3<document.inputform.msg.value.length))
{
document.inputform.msg.focus();
return false;
} //更新时间
t1=t2; document.inputform.showsign.value=1; //保存上次发言内容
document.inputform.message.value =document.inputform.msg.value; //清空发言内容
document.inputform.msg.value =''; //保存发言对象
dx=document.inputform.talkto.value; //定位焦点
document.inputform.msg.focus(); //返回
return(true);
} 3调用信息发送程序,发布聊天者已经进入的信息
<script>
parent.bl.document.open();
parent.bl.document.write("<meta http-equiv='refresh' content='0;url=messagesend.PHP?name=<? print($name); ?>&&action=enter&&pass=<? print($pass); ?>'>")
parent.bl.document.close();
</script> 发言由messagesend.PHP处理完成,注意输出对象为bl,也就是处理发言的框架名称,这样保证发言框架的页面内容的完整
原作者:howtodo
来源:PHP2000.com
php爱好者站 http://www.phpfans.net 网页特效|网页模板
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载