SessionA和pplication网上聊天室的网络范例

SessionA和pplication网上聊天室的网络范例

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

login.aspx码,如以下:

<%@ Page Language=”C#” AutoEventWireup=”true” CodeFile=”Sample_chat_login.aspx.cs” Inherits=”Sample_chart_login” %>

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>

<html xmlns=”http://www.w3.org/1999/xhtml”>
<head runat=”server”>
    <title></title>
    <style type=”text/css” >
        body { width:780px; margin:0px auto;}
        form { width:400px; margin:0px auto;}
        h3 { margin:10px; padding:10px; text-align:center;}
        p.tc { text-align:center; }
        
    
    </style>
</head>
<body>
    <form id=”form1″ runat=”server” defaultbutton=”Button1″ defaultfocus=”txt_id”>
    <div>
        <h3>聊天室登录</h3>

        <div>
            <p class=”tc”>
                <span >username:</span>
                <asp:TextBox ID=”txt_id” runat=”server”></asp:TextBox>    </p>
        
            <p  class=”tc”>
                <asp:Button ID=”Button1″ runat=”server” Text=”登录聊天室” onclick=”Button1_Click” />
            </p>
        </div>
    
    </div>
    </form>
</body>
</html>

login.aspx.cs代码例如以下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Sample_chart_login : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        //记录session: 当前username
        //跳转至聊天室页面
        if (txt_id.Text != "") {
            Session["s_id"] = txt_id.Text;
            Server.Transfer("Sample_chat_room.aspx");
        }
    }
}

room.aspx代码例如以下:

<%@ Page Language=”C#” AutoEventWireup=”true” CodeFile=”Sample_chat_room.aspx.cs” Inherits=”Sample_chat_room” %>

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>

<html xmlns=”http://www.w3.org/1999/xhtml”>
<head runat=”server”>
    <title></title>
    
    <style type=”text/css” >
        body { width:780px; margin:0px auto;}
       
        h3 { margin:10px; padding:10px; text-align:center;}
        p.tc { text-align:center; }
        
        #pnl_chat 
            { margin:10px; padding:10px;
              border:1px solid #dadada;
              height:300px;
                }
        #div_ctls
            { margin:10px; padding:10px;
              border:1px solid #dadade;
                }
    </style>

</head>
<body >
    <form id=”form1″ runat=”server” defaultbutton=”Button1″ defaultfocus=”txt_word”>
    <div>
    <h3>简易聊天室</h3>
    
    <asp:Panel ID=”pnl_chat” runat=”server” ScrollBars=”Vertical”>
    </asp:Panel>
    
    <div id=”div_ctls”>
        <p>
        <asp:TextBox ID=”txt_word” runat=”server” Width=”400″></asp:TextBox>
        <asp:Button ID=”Button1″ runat=”server” Text=”发送” onclick=”Button1_Click” />
        &nbsp;
            <asp:Button ID=”Button2″ runat=”server” Text=”刷新聊天记录”  />
         &nbsp;
            <asp:Button ID=”Button4″ runat=”server” Text=”清空” onclick=”Button4_Click”  />
        &nbsp;
            <asp:Button ID=”Button3″ runat=”server” Text=”退出聊天” onclick=”Button3_Click” />
        </p>

   <p>
        <span>选择我的颜色:</span>
        
        <asp:DropDownList ID=”ddl_color” runat=”server”>
            <asp:ListItem Value=”#666666″>默认</asp:ListItem>
            <asp:ListItem Value=”red”>红色</asp:ListItem>
            <asp:ListItem Value=”green”>绿色</asp:ListItem>
            <asp:ListItem Value=”blue”>蓝色</asp:ListItem>
        </asp:DropDownList>

        </p>
    </div>

    </div>
    </form>
</body>
</html>

room.aspx.cs代码例如以下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Sample_chat_room : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //检測session是否存在,假设没有session值,返回登录页面
        if (Session["s_id"] == "" || Session["s_id"] == null) {
            Response.Redirect("Sample_chat_login.aspx");
        }


        

            //假设还没有Application["chat"]则创建。假设有则写入panel
            if (Application["chat"] != null)
            {
                pnl_chat.Controls.Add((Panel)Application["chat"]);
            }
            else
            {
                Panel _pnl = new Panel();
                Application["chat"] = _pnl;
            }
        

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        if(txt_word.Text !="") { // 注意:实际应用中,文本框是否为空,都应在前台进行检測;

        Label lab_name = new Label();
        lab_name.Text = Session["s_id"].ToString() + "[" + DateTime.Now.ToLongTimeString() + "]:";

        Label lab_word = new Label();
        lab_word.Style.Add("color", ddl_color.SelectedValue);
        lab_word.Text = txt_word.Text;

        Literal br = new Literal();
        br.Text = "<br/>";

        Panel _apppnl = (Panel)Application["chat"];
        _apppnl.Controls.AddAt(0, br);
        _apppnl.Controls.AddAt(0, lab_word);
        _apppnl.Controls.AddAt(0, lab_name);
            
        //_apppnl.Controls.Add(lab_name);
        //_apppnl.Controls.Add(lab_word);
        //_apppnl.Controls.Add(br);

        Application.Lock();
        Application["chat"] = _apppnl;
        Application.UnLock();

         

        //清空文本框
        txt_word.Text = "";

        pnl_chat.Controls.Add((Panel)Application["chat"]);
        

        }
    }
    protected void Button3_Click(object sender, EventArgs e)
    {
        Session.Remove("s_id");
        Response.Redirect("Sample_chat_login.aspx");

    }
    protected void Button2_Click(object sender, EventArgs e)
    {

    }
    protected void Button4_Click(object sender, EventArgs e)
    {
        Application.Lock();
        Application.Remove("chat");
        Application.UnLock();

        Server.Transfer("Sample_chat_room.aspx");
    }
}

SessionA和pplication网上聊天室的网络范例
SessionA和pplication网上聊天室的网络范例

     

版权声明:本文博客原创文章,博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117679.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java 取余 小数_Java小数取余问题求助「建议收藏」

    java 取余 小数_Java小数取余问题求助「建议收藏」2016-09-0101:19最佳答案楼上的全不明白楼主的意思,楼主要的是算法,不是程序你们懂吗!!!我只能说你们不懂什么叫真正的算法,你们只是计算机的傀儡,我看了你们回答非常生气,高校教出来的就是这种“人才”,连算法都不懂。还不如我一高中生。严重BS楼上的,尤其是说java语言的那位。我来告诉你这个问题用递推解决首先要你承认一个公式,我是习惯pascal语言的,c++怕写错,反正只是算法,你忍…

    2022年6月6日
  • 查看idea激活码-激活码分享

    (查看idea激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html1STL5S9V8F-eyJsaWNlbnNlSWQi…

    2022年3月27日
  • json文件的读取_c语言文件读取

    json文件的读取_c语言文件读取JSON是JS对象的字符串表示法,它使用文本表示一个JS对象的信息,本质是一个字符串。有关于json的相关信息,可参考:json百度百科。1、HTML文档&lt;!DOCTYPEhtml&gt;&lt;htmllang="en"&gt;&lt;head&gt;&lt;metacharset="UTF-8"&gt;&lt;title&gt;R

    2022年10月11日
  • SpringCloud—-如何解决灾难性雪崩效应

    SpringCloud—-如何解决灾难性雪崩效应

    2020年11月12日
  • java11-泛型及其使用[通俗易懂]

    java11-泛型及其使用[通俗易懂]1.概述就本质而言“泛型”的意思就是参数化类型。参数化类型很重要,因为使用该特性创建的类、接口以及方法可以以参数的形式指定操作的数据类型。泛型通俗的说就是方法的返回值或参数是不确定的,可以随创建

    2022年8月4日
  • mysql查询表占用空间大小_oracle查看表空间大小

    mysql查询表占用空间大小_oracle查看表空间大小MySQL查看库,表占用空间大小

    2022年9月4日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号