直播中
1下面是基本的發(fā)送表單代碼
<form name=inputform action='messagesend.php' target='bl' onsubmit='return(checksay());' method=POST>
<?
//下面的2個(gè)參數(shù)用于驗(yàn)證信息的正確性
print("<input type='hidden' name='name' value='$name'>n");
print("<input type='hidden' name='pass' value='$pass'>n");
?>
//聊天對(duì)象,注意加上 readonly 屬性
<input type="text" name="talkto" size="10" maxlength="20" readonly value="所有人">
//上次聊天的發(fā)送內(nèi)容
<input type='hidden' name='message' value=''>
//發(fā)送的表單文本框
<input type="text" name="msg" maxlength="120" size="34">
<input type="submit" name="Submit" value="發(fā)送">
</form>
2 檢查發(fā)送內(nèi)容的js
var dx ='';
function checksay( )
{
//不允許發(fā)送空的發(fā)言
if(document.inputform.msg.value=='')
{
document.inputform.msg.focus();
return false;
}
//不允許重復(fù)發(fā)言,內(nèi)容相同,對(duì)象相同
if ((document.inputform.msg.value==document.inputform.message.value)&&(document.inputform.talkto.value==dx))
{
alert('發(fā)言不能重復(fù)');
document.inputform.msg.focus();
return false;
}
//兩次發(fā)言內(nèi)容的間隔不能小于1秒,或者發(fā)言字?jǐn)?shù)大于間隔*3
t2=(new Date()).getTime()/1000;
if(((t2-t1)<1)||((t2-t1)*3<document.inputform.msg.value.length))
{
document.inputform.msg.focus();
return false;
}
//更新時(shí)間
t1=t2;
document.inputform.showsign.value=1;
//保存上次發(fā)言內(nèi)容
document.inputform.message.value =document.inputform.msg.value;
//清空發(fā)言內(nèi)容
document.inputform.msg.value ='';
//保存發(fā)言對(duì)象
dx=document.inputform.talkto.value;
//定位焦點(diǎn)
document.inputform.msg.focus();
//返回
return(true);
}
3調(diào)用信息發(fā)送程序,發(fā)布聊天者已經(jīng)進(jìn)入的信息
<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>
發(fā)言由messagesend.php處理完成,注意輸出對(duì)象為bl,也就是處理發(fā)言的框架名稱,這樣保證發(fā)言框架的頁(yè)面內(nèi)容的完整