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


Posted in PHP onOctober 09, 2006

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> 

PHP 相关文章推荐
PHP开发大型项目的一点经验
Oct 09 PHP
对javascript和select部件的结合运用
Oct 09 PHP
小偷PHP+Html+缓存
Nov 25 PHP
如何在PHP中使用正则表达式进行查找替换
Jun 13 PHP
PHP获取MSN好友列表类的实现代码
Jun 23 PHP
浅析php中如何在有限的内存中读取大文件
Jul 02 PHP
一个基于phpQuery的php通用采集类分享
Apr 09 PHP
浅谈使用 PHP 进行手机 APP 开发(API 接口开发)
Aug 11 PHP
php过滤html标记属性类用法实例
Sep 23 PHP
php使用parse_url和parse_str解析URL
Feb 22 PHP
JavaScript实现删除电脑的关机键
Jul 26 PHP
Smarty日期时间操作方法示例
Nov 15 PHP
模拟OICQ的实现思路和核心程序(一)
Oct 09 #PHP
PHP自动更新新闻DIY
Oct 09 #PHP
模拟OICQ的实现思路和核心程序(二)
Oct 09 #PHP
层叠菜单的动态生成
Oct 09 #PHP
多数据表共用一个页的新闻发布
Oct 09 #PHP
PHP与MySQL交互使用详解
Oct 09 #PHP
3种平台下安装php4经验点滴
Oct 09 #PHP
You might like
PHILIPS AE3805收音机的分析打磨
2021/03/02 无线电
php面向对象全攻略 (一) 面向对象基础知识
2009/09/30 PHP
php 读取shell管道传输过来的内容
2010/03/01 PHP
php读取文件内容到数组的方法
2015/03/16 PHP
php获取本机真实IP地址实例代码
2016/03/31 PHP
PHP笛卡尔积实现算法示例
2018/07/30 PHP
菜鸟学习JavaScript小实验之函数引用
2010/11/17 Javascript
jquery仿搜索自动联想功能代码
2014/05/23 Javascript
深入理解JavaScript系列(50):Function模式(下篇)
2015/03/04 Javascript
Javascript中的arguments与重载介绍
2015/03/15 Javascript
javascript实现倒计时(精确到秒)
2015/06/26 Javascript
javascript拖拽应用实例(二)
2016/03/25 Javascript
JS实现把鼠标放到链接上出现滚动文字的方法
2016/04/06 Javascript
微信小程序显示下拉列表功能【附源码下载】
2017/12/12 Javascript
详解NodeJs开发微信公众号
2018/05/25 NodeJs
通过jquery.cookie.js实现记住用户名、密码登录功能
2018/06/20 jQuery
[02:03]《现实生活中的DOTA2》—林书豪&DOTA2职业选手出演短片
2015/08/18 DOTA
[04:50]2019DOTA2高校联赛秋季赛四强集锦
2019/12/27 DOTA
Python 基础知识之字符串处理
2017/01/06 Python
使用Python生成XML的方法实例
2017/03/21 Python
python 移动图片到另外一个文件夹的实例
2019/01/10 Python
Python使用while循环花式打印乘法表
2019/01/28 Python
详解Python Qt的窗体开发的基本操作
2019/07/14 Python
python中树与树的表示知识点总结
2019/09/14 Python
python 画3维轨迹图并进行比较的实例
2019/12/06 Python
Pycharm最新激活码2019(推荐)
2019/12/31 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
2020/01/28 Python
澳大利亚现代波西米亚风格女装网站:Bohemian Traders
2018/04/16 全球购物
垃圾分类的活动方案
2014/08/15 职场文书
2015年高校辅导员工作总结
2015/04/20 职场文书
职工趣味运动会开幕词
2016/03/04 职场文书
2019数学教师下学期工作总结
2019/06/27 职场文书
2019年中学生的思想品德评语集锦
2019/12/19 职场文书
Pytorch 中net.train 和 net.eval的使用说明
2021/05/22 Python
海贼王十大逆天果实 魂魂果实上榜,岩浆果实攻击力最强
2022/03/18 日漫
Windows server 2012 NTP时间同步的实现
2022/06/25 Servers