模拟OICQ的实现思路和核心程序(三) 

  •   2009-08-01/08:12
  • 5 聊天信息的发送、阅读和回复程序 - shortalk.php

    <?
    require("require.php"); // 判断用户是否合法在线的公用程序
    ?>
    <html>
    <head>
    <title>短信息</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <style type="text/css">
    td {font-size:9pt}
    </style>
    <script language="Javascript">
    <!--
    function docheck() {
    if (document.sendmsg.replymessage.value=="") {
    alert("缺少内容:需要输入您的留言内容");
    document.sendmsg.replymessage.focus();
    return(false);
    }
    return (true);
    }

    function MM_openBrWindow(theURL,winName,features) { //v2.0
    window.open(theURL,winName,features);
    }
    //-->
    </script>
    </head>

    <body bgcolor="#DDDDFF"leftmargin="0" topmargin="0" background="phpchat_images/cloudtile.jpg">
    <?
    if($action == "view")
    {
    $tmp = mysql_fetch_array(mysql_query("select sender,body,date from forumtalk where id=$talknumber and receiver='$name'"));
    $msg = $tmp['body'];
    $message = ereg_replace("
    ","\r\n",$msg);
    mysql_query("update forumtalk set readsign=1 where id=$talknumber");
    $sendernickname = mysql_fetch_row(mysql_query("select nickname from userinfo where name='".$tmp['sender']."'"));
    ?>
    <table width="300" border="0" cellspacing="0" cellpadding="0" height="200" bgcolor="f0f0f0">
    <tr>
    <td colspan="2" height="20" bgcolor="99cc99" align="center">查看短信息</td>
    </tr>
    <tr>
    <td colspan="2" height="20"><?echo date("m月d日 h:i",$tmp['date'])." ".$sendernickname[0]?> 给你[<?echo $name?>]留言:</td>
    </tr>
    <form name=viewtalk action=shortalk.php method=post>
    <input type=hidden name=talkto value=<?echo $tmp['sender']?>>
    <input type=hidden name=action value=send>
    <input type=hidden name=talknumber value=<?print($talknumber)?>>
    <tr align="center">
    <td colspan="2" height="146" valign="top">
    <textarea name="textfield" cols="40" rows="11" readonly><?print($message)?></textarea>
    </td>
    </tr>
    <tr>
    <td colspan="2" align="center">
    <input type="submit" name="toreply" value="回复留言 Enter">
    <a href="#" onClick="MM_openBrWindow('memberviewtalk.php?talkto=<?echo $tmp['sender']?>','viewtalk','scrollbars=yes')">聊天纪录</a> </td>
    </tr>
    </form>
    </table>
    <script language="Javascript">
    document.viewtalk.toreply.focus();
    </script>
    <?
    }
    else if ($action == "sendbegin")
    {
    $replymessage = ereg_replace("\r\n","
    ",$replymessage);
    $replymessage = ereg_replace(">",">",$replymessage);
    $replymessage = ereg_replace("<","<",$replymessage);
    $replymessage = substr($replymessage,0,2000);
    mysql_query("insert into forumtalk (sender,receiver,body,date) values ('$name','$talkto','$replymessage',".date("U").")");
    print("<script language='javascript'>window.close()</script>");
    }
    else
    {
    ?>
    <table width="300" border="0" cellspacing="0" cellpadding="0" height="200" bgcolor="f0f0f0">
    <form name=sendmsg action=shortalk.php method=post OnSubmit=return(docheck());>
    <input type=hidden name=action value=sendbegin>
    <tr align="center">
    <td colspan="2" height="20" bgcolor="99cc99">发送短信息</td>
    </tr>
    <tr align="center">
    <td colspan="2" height="20">发言对象:
    <select name="talkto">
    <?
    $result = mysql_query("select name,nickname from userinfo where onlinestatus=1");
    while($msg=mysql_fetch_array($result))
    {
    if($msg['name']==$talkto)
    echo "<option value='".$msg['name']."' selected>".$msg['nickname']."</option>\n";
    else
    echo "<option value='".$msg['name']."'>".$msg['nickname']."</option>\n";
    }
    ?>
    </select>
    请短于500字符 </td>
    </tr>
    <tr align="center">
    <td colspan="2" height="146" valign="top">
    <textarea name="replymessage" cols="40" rows="9"></textarea>
    </td>
    </tr>
    <tr align="center">
    <td colspan="4">
    <?
    if($talknumber != "")
    {
    print("<input type=button name=review value='查看前一留言 Alt+P' accesskey='p' onClick='javascript:history.go(-1)'>");
    }
    ?>
    <input type="submit" name="reply" value="开始新的发送留言 Alt+S" accesskey='s'>
    <a href="#" onClick="MM_openBrWindow('memberviewtalk.php?talkto=<?echo $talkto?>','viewtalk','scrollbars=yes')">聊天纪录</a></td>
    </tr>
    </form>
    </table>
    <script language="Javascript">
    document.sendmsg.replymessage.focus();
    </script>
    <?
    }
    ?>
    </body>
    </html> 

    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多