网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP.NET技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.记时器在ASP.NET中的应用.
.ASP.Net C#2.0全能数据库组件 (开.
.在ASP.NET页面上轻松整合JavaScr.
.使用ASP.NET Atlas开发检测密码强.
..net操纵xml文件类(c#).
.支持正则表达式的UrlMapping(AS.
.使用UTF-8编码/JMail组件发送邮件.
.通过ASP.net程序创建域帐户故障.
.大数量查询分页显示 微软的解决办.
.asp.net身份验证(登录控件),基于.
.asp.net menu "Operation aborte.
.跨应用程序进行Forms身份验证详解.
.Login控件在UpdatePanel内当验证.
.将输入的20041219等的数字字符串.
.对“学号”、“身份证”的数字分.
.asp.net中大结果集的分页[翻译].
.Asp.net1.1升级到2.0遇到的一些问.
.ASP.NET之上传文件管理策略.
.ASP.NET--制作功能完善的安装程序.
.dot net html分析类库 .

改写即时消息的发送,包含同时给多人发送信息!

发表日期:2003-12-29


   以前的的发送消息按钮事件改写如下:
  '/////////////////////转到发送即时消息页面
   Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
   Dim i, j As Integer
   j = 0
   Dim tostu_id As String = ""
   For i = 0 To mycheck.Items.Count - 1
   If mycheck.Items(i).Selected Then
   '////////////////////////限制发送条数
   j = j + 1
   If j < 6 Then
   '/////////////////////参数构造
   tostu_id = tostu_id & CheckBoxList1.Items(i).Text & "@"
   Else
   Label2.Visible = True
   Label2.Text = "一次最多能给五个用户发送信息!"
   Return
   'Response.Write("<script language=JavaScript>window.open('info.aspx?tostu_id=' & CheckBoxList1.Items(i).Text,'','height=330,width=560,status=no,location=no,toolbar=no,directories=no,menubar=no')</script>")
   End If
   End If
   Next i
   Response.Redirect("info.aspx?tostu_id=" & tostu_id)
   End Sub
  
  
  
  这里发送信息的页面由于修改的比较多,所以把全部代码全都抓来了,呵呵:)
  codebebind部分:
  Imports System.Data
  Imports System.Data.SqlClient
  Public Class info
   Inherits System.Web.UI.Page
   Protected WithEvents Label1 As System.Web.UI.WebControls.Label
   Protected WithEvents Label2 As System.Web.UI.WebControls.Label
   Protected WithEvents TextBox2 As System.Web.UI.WebControls.TextBox
   Protected WithEvents Button1 As System.Web.UI.WebControls.Button
   Protected WithEvents Button2 As System.Web.UI.WebControls.Button
   Protected WithEvents Label3 As System.Web.UI.WebControls.Label
   Protected WithEvents Label4 As System.Web.UI.WebControls.Label
   Protected WithEvents Label5 As System.Web.UI.WebControls.Label
   Protected WithEvents Label6 As System.Web.UI.WebControls.Label
   Protected WithEvents TextBox3 As System.Web.UI.WebControls.TextBox
   Protected WithEvents Image3 As System.Web.UI.WebControls.Image
   Protected WithEvents Label8 As System.Web.UI.WebControls.Label
   Protected WithEvents Label7 As System.Web.UI.WebControls.Label
   Protected WithEvents Label9 As System.Web.UI.WebControls.Label
   Protected WithEvents Label10 As System.Web.UI.WebControls.Label
   Protected WithEvents Button3 As System.Web.UI.WebControls.Button
   Protected WithEvents Label11 As System.Web.UI.WebControls.Label
   Protected WithEvents TextBox1 As System.Web.UI.WebControls.TextBox
  
  #Region " Web Form Designer Generated Code "
  
   'This call is required by the Web Form Designer.
   <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
  
   End Sub
  
   Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
   'CODEGEN: This method call is required by the Web Form Designer
   'Do not modify it using the code editor.
   InitializeComponent()
   End Sub
  
  #End Region
   Dim conn As SqlConnection = New SqlConnection("server=lixinri;uid=sa;pwd=;database=99re1")
   Public Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
   If Not IsPostBack Then
   Dim tostu_id As String = Request.QueryString("tostu_id")
   Dim splitname() As String
  '///////////这里用了Split函数将传过来的参数取出
   splitname = Split(tostu_id, "@")
   If tostu_id = "" Then
   '//////////////////当回复留言时
   Dim sql As String = "select a.*,b.nick from info a,pwd b where a.fromstu_id=b.stu_id and a.tostu_id='" & Session("stu_id") & "' and a.term=1"
   Dim comm As SqlCommand = New SqlCommand(sql, conn)
   Dim dr As SqlDataReader
   conn.Open()
   dr = comm.ExecuteReader
   While dr.Read
   Label3.Text = dr.Item("nick")
   Label4.Text = dr.Item("tim")
   Label5.Text = "    " & dr.Item("content")
   TextBox1.Text = dr.Item("nick")
   TextBox3.Text = dr.Item("fromstu_id")
   TextBox1.Enabled = False
   Label8.Visible = False
   Label11.Visible = False
   End While
   dr.Close()
   comm.Cancel()
   '//////////////////////更新留言使留言属性为已阅读过
   Dim sql_1 As String = "update info set term=0 where tostu_id='" & Session("stu_id") & "' and term=1 and tim='" & Label4.Text & "'"
   comm = New SqlCommand(sql_1, conn)
   comm.ExecuteNonQuery()
   Else
   '////////////////////当发送留言时
   '/////////////////读取参数
   Dim i As Integer
   For i = 0 To UBound(splitname) - 1
   Dim mysql As String = "select nick from pwd where stu_id='" & splitname(i) & "'"
   Dim comm As SqlCommand = New SqlCommand(mysql, conn)
   Dim dr As SqlDataReader
   If i = 0 Then
   conn.Open()
   dr = comm.ExecuteReader
   If dr.Read Then
   TextBox1.Text = Trim(dr.item("nick")) & ";"
   End If
   control()
   dr.close()
   Else
   dr = comm.ExecuteReader
   If dr.Read Then
   TextBox1.Text = TextBox1.Text & Trim(dr.item("nick")) & ";"
   End If
   control()
   dr.close()
   End If
   Next i
   End If
   End If
   End Sub
   '/////////////////control事件,没有什么实际意义,使代码简单罢了。
   Sub control()
   TextBox1.Enabled = False : Label3.Text = "" : Label4.Text = "" : Label5.Visible = False
   Label8.Visible = True : Label6.Visible = False : Label7.Visible = False : Label9.Visible = False
   Button3.Visible = False : Label11.Visible = True
   Label11.Text = "<a href=board.aspx><<<返回学友录</a>"
   End Sub
  
   '/////////////////书写提交消息事件
   Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
   Dim tostu_id As String = Request.QueryString("tostu_id")
   Dim splitname() As String
   splitname = Split(tostu_id, "@")
   If tostu_id = "" Then
   '/////////////////////////当回复留言时
   If TextBox2.Text = "" Or TextBox2.Text = " " Then
   Label10.Visible = True
   Label10.Text = "消息不能为空!"
   Return
   Else
   Label10.Visible = False
   conn.Open()
   Dim sql As String = "insert into info(fromstu_id,tostu_id,content,term,tim) values(@fromstu_id,@tostu_id,@content,@term,@tim)"
   Dim comm As SqlCommand = New SqlCommand(sql, conn)
   comm.Parameters.Add(New SqlParameter("@fromstu_id", SqlDbType.Int, 4))
   comm.Parameters("@fromstu_id").Value = Session("stu_id")
  
   comm.Parameters.Add(New SqlParameter("@tostu_id", SqlDbType.Int, 4))
   comm.Parameters("@tostu_id").Value = TextBox3.Text
  
   comm.Parameters.Add(New SqlParameter("@content", SqlDbType.VarChar, 200))
   comm.Parameters("@content").Value = TextBox2.Text
  
   comm.Parameters.Add(New SqlParameter("@term", SqlDbType.Int, 4))
   comm.Parameters("@term").Value = "1"
  
   comm.Parameters.Add(New SqlParameter("@tim", SqlDbType.Char, 20))
   comm.Parameters("@tim").Value = Date.Now
   comm.ExecuteNonQuery()
   'TextBox2.Text = ""
   End If
   Else
   '/////////////////////////当发送留言时
   If TextBox2.Text = "" Or TextBox2.Text = " " Then
   Label10.Visible = True
   Label10.Text = "消息不能为空!"
   Return
   Else
   '////////////////插入i条数据
   Dim i As Integer
   For i = 0 To UBound(splitname) - 1
   Label10.Visible = False
   If i = 0 Then
   conn.Open()
   Else
   End If
   Dim sql As String = "insert into info(fromstu_id,tostu_id,content,term,tim) values(@fromstu_id,@tostu_id,@content,@term,@tim)"
   Dim comm As SqlCommand = New SqlCommand(sql, conn)
   comm.Parameters.Add(New SqlParameter("@fromstu_id", SqlDbType.Int, 4))
   comm.Parameters("@fromstu_id").Value = Session("stu_id")
  
   comm.Parameters.Add(New SqlParameter("@tostu_id", SqlDbType.Int, 4))
   comm.Parameters("@tostu_id").Value = splitname(i)
  
   comm.Parameters.Add(New SqlParameter("@content", SqlDbType.VarChar, 200))
   comm.Parameters("@content").Value = TextBox2.Text
  
   comm.Parameters.Add(New SqlParameter("@term", SqlDbType.Int, 4))
   comm.Parameters("@term").Value = "1"
  
   comm.Parameters.Add(New SqlParameter("@tim", SqlDbType.Char, 20))
   comm.Parameters("@tim").Value = Date.Now
   comm.ExecuteNonQuery()
   'TextBox2.Text = ""
   Next i
   End If
   End If
   Response.Write("<script language=javascript>alert('发送成功!')</script>")
   End Sub
  
   '////////////////////返回继续发送
   Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
   Response.Redirect("boaman.aspx")
   End Sub
  
   Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
   Response.Write("<script language=javascript>window.close()</script>")
   End Sub
  End Class
  
  
  感谢laodeng了:)
上一篇:.net中即时消息发送的实现…… 人气:12766
下一篇:asp.NET特写 人气:10794
浏览全部即时消息的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐