模拟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 相关文章推荐
最省空间的计数器
Oct 09 PHP
php数组总结篇(一)
Sep 30 PHP
php INI配置文件的解析实现分析
Jan 04 PHP
基于PHP输出缓存(output_buffering)的深入理解
Jun 13 PHP
使用PHP导出Word文档的原理和实例
Oct 21 PHP
彻底删除thinkphp3.1案例blog标签的方法
Dec 05 PHP
盘点PHP和ASP.NET的10大对比!
Dec 24 PHP
Discuz论坛密码与密保加密规则
Dec 19 PHP
PHP实现活动人选抽奖功能
Apr 19 PHP
php魔法函数与魔法常量使用介绍
Jul 23 PHP
解决laravel 出现ajax请求419(unknown status)的问题
Sep 03 PHP
PHP调用接口API封装的例子
Oct 11 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
php中设置index.php文件为只读的方法
2013/02/06 PHP
解决PHP mysql_query执行超时(Fatal error: Maximum execution time …)
2013/07/03 PHP
PHP测试框架PHPUnit组织测试操作示例
2018/05/28 PHP
PHP基于rabbitmq操作类的生产者和消费者功能示例
2018/06/16 PHP
jQuery 操作XML入门
2008/12/25 Javascript
10款非常有用的 Ajax 插件分享
2012/03/14 Javascript
JSON格式的键盘编码对照表
2015/01/29 Javascript
js实现的万能flv网页播放器代码
2016/04/30 Javascript
深入理解requestAnimationFrame的动画循环
2016/09/20 Javascript
原生js代码实现图片放大境效果
2016/10/30 Javascript
JavaScript的兼容性与调试技巧
2016/11/22 Javascript
BootStrap 图标icon符号图标glyphicons不正常显示的快速解决办法
2016/12/08 Javascript
微信小程序 动态的设置图片的高度和宽度详解及实例代码
2017/02/24 Javascript
Angular2利用组件与指令实现图片轮播组件
2017/03/27 Javascript
js上传图片预览的实现方法
2017/05/09 Javascript
原生JS+CSS实现炫酷重力模拟弹跳系统的登录页面
2017/11/01 Javascript
Vue中添加手机验证码组件功能操作方法
2017/12/07 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
JS FormData对象使用方法实例详解
2020/02/12 Javascript
OpenLayers3实现鼠标移动显示坐标
2020/09/25 Javascript
通过JS判断网页是否为手机打开
2020/10/28 Javascript
Python3里的super()和__class__使用介绍
2015/04/23 Python
Python中Collections模块的Counter容器类使用教程
2016/05/31 Python
Python爬取京东的商品分类与链接
2016/08/26 Python
python WindowsError的错误代码详解
2017/07/23 Python
Python实现统计英文文章词频的方法分析
2019/01/28 Python
python pygame实现五子棋小游戏
2020/10/26 Python
如何定义TensorFlow输入节点
2020/01/23 Python
HTML5中form如何关闭自动完成功能的方法
2018/07/02 HTML / CSS
HearthSong官网:儿童户外玩具、儿童益智玩具
2017/10/16 全球购物
销售职业生涯规划范文
2014/03/14 职场文书
软件售后服务承诺书
2014/05/21 职场文书
体育专业自荐书
2014/05/29 职场文书
2015年党员创先争优承诺书
2015/01/22 职场文书
销售工作决心书
2015/02/04 职场文书
关于JavaScript 中 if包含逗号表达式
2021/11/27 Javascript