📄 getchatingnews.aspx
字号:
<%@ import namespace="System.Xml" %>
<%@ language="C#" runat=server EnableSessionState="True" debug=True%>
<script language="C#" runat="server">
void Page_Load(Object sender,EventArgs E)
{
try{
//设置页面自动刷新时间
Response.AddHeader("Refresh","10");
//创建访问XML文档的XmlDocument对象
XmlDocument xmldoc=new XmlDocument();
xmldoc.Load(Server.MapPath("/chatdata/chatings.xml"));
XmlNode root=xmldoc.DocumentElement;
//获得消息条数
int i=root.ChildNodes.Count;
//判断保存的消息是否超过100条,仅仅保留最新的100条信息
int j;
if(i>100)
{
//删除多余的信息
for(j=i-1;j>99;j--)
{
root.RemoveChild(root.ChildNodes[j]);
i--;
}
xmldoc.Save(Server.MapPath("/chatdata/chatings.xml"));
}
String sendor,receive,face,onlyone,color,news,outstr,userName;
XmlNode node;
//获得Session中保存的当前用户的名称
Object name=Session["UserName"];
userName=name.ToString();
//输出保存的聊天信息
for(j=0;j<=i-1;j++)
{
//获得每个信息元素中的值
node=root.ChildNodes[j];
sendor=node.ChildNodes[0].InnerText;
receive=node.ChildNodes[1].InnerText;
face=node.ChildNodes[2].InnerText;
onlyone=node.ChildNodes[3].InnerText;
color=node.ChildNodes[4].InnerText;
news=node.ChildNodes[5].InnerText;
Response.Write("<br>");
//判断是否为悄悄话
//只允许当前用户看到自己发送或收到的悄悄话
if(onlyone=="True")
{
//输出当前用户收到的悄悄话
if(receive==userName)
{
outstr="<font color='"+color+"'>"+sendor+face+"悄悄对你说:"+news+"</font>";
outstr="<marquee>"+outstr+"</marquee>";
Response.Write(outstr);
}
//输出当前用户发送的悄悄话
if(sendor==userName)
{
outstr="<font color='"+color+"'>你"+face+"悄悄对"+receive+"说:"+news+"</font>";
outstr="<marquee>"+outstr+"</marquee>";
Response.Write(outstr);
}
}
//输出非悄悄话, 非悄悄话所有用户都可以看到
else
{
outstr="<font color='"+color+"'>"+sendor+face+"对"+receive+"说:"+news+"</font>";
Response.Write(outstr);
}
}
}
//处理在出错是显示的信息
//这种情况在Session中的"UserName"被清空时出现
catch(Exception e)
{
//当出错时自动连接到error.htm页面,显示相应的提示信息
Response.Redirect("error.htm");
}
}
</script>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -