Dim conn As SqlConnection
            conn = New SqlConnection("server=.;uid=sa;pwd=kaokaohaoma;database=book;")
            Dim mingling As String = "insert into [book] (username,qq,email,pic,zhuti,ly,ip,time)  values (@username,@qq,@email,@pic,@zhuti,@ly,@ip,@time)"
            Dim cmd As New SqlCommand(mingling, conn)
            cmd.Parameters.Add(New SqlParameter("@username", SqlDbType.VarChar, 50))
            cmd.Parameters("@username").Value = Me.UserName.Text
            cmd.Parameters.Add(New SqlParameter("@qq", SqlDbType.VarChar, 50))
            cmd.Parameters("@qq").Value = Me.QQ.Text
            cmd.Parameters.Add(New SqlParameter("@email", SqlDbType.VarChar, 50))
            cmd.Parameters("@email").Value = Me.email.Text
            cmd.Parameters.Add(New SqlParameter("@pic", SqlDbType.VarChar, 50))
            cmd.Parameters("@pic").Value = Me.pic.SelectedValue
            cmd.Parameters.Add(New SqlParameter("@zhuti", SqlDbType.VarChar, 50))
            cmd.Parameters("@zhuti").Value = Me.zhuti.Text
            cmd.Parameters.Add(New SqlParameter("@ly", SqlDbType.Text, 500))
            cmd.Parameters("@ly").Value = Me.ly.Text
            cmd.Parameters.Add(New SqlParameter("@ip", SqlDbType.VarChar, 50))
            cmd.Parameters("@ip").Value = ip
            cmd.Parameters.Add(New SqlParameter("@time", SqlDbType.DateTime, 8))
            cmd.Parameters("@time").Value = time
            conn.Open()
            Dim count As Integer = cmd.ExecuteNonQuery()
     cmd.Connection.Close()
            If count < 1 Then
                Response.Write("<script>alert('信息添加失败');history.go(-1)</script>")
            Else
                Response.Write("<script>alert('信息添加成功');history.go(-1)</script>")
        End If
以上是代码,请那位大哥帮我看下,为什么我每次提交!数据库会自动写入二条数据。一样的

解决方案 »

  1.   

    我认为你是将这段代码放到了
    page_load
    中了
      

  2.   

    把全部aspx代码和c#代码贴出来
      

  3.   

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.guanbi.Attributes.Add("onclick", "window.close()")
        End Sub    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            Dim ip As String = Request.UserHostAddress
            Dim time As String = Now
            Dim username As String = Me.UserName.Text
            Dim qq As String = Me.QQ.Text
            Dim zhuti As String = Me.zhuti.Text
            Dim ly As String = Me.ly.Text
            Dim email As String = Me.email.Text
            If Me.UserName.Text = "" Or Me.QQ.Text = "" Or Me.zhuti.Text = "" Or Me.ly.Text = "" Or Me.pic.SelectedValue = "" Or Me.email.Text = "" Then
                Response.Write("<script>alert('请填写完整信息');history.back()</script>")
                Response.End()
            End If
            If Len(qq) > 15 Or Len(username) > 10 Or Len(zhuti) > 10 Or Len(email) > 20 Or Len(ly) > 500 Then
                Response.Write("<script>alert('内容过长,请从新添写!');history.back()</script>")
    Response.End()
            end if
                Dim conn As SqlConnection
                conn = New SqlConnection("server=.;uid=sa;pwd=kaokaohaoma;database=book;")
                Dim mingling As String = "insert into [book] (username,qq,email,pic,zhuti,ly,ip,time)  values (@username,@qq,@email,@pic,@zhuti,@ly,@ip,@time)"
                Dim cmd As New SqlCommand(mingling, conn)
                cmd.Parameters.Add(New SqlParameter("@username", SqlDbType.VarChar, 50))
                cmd.Parameters("@username").Value = Me.UserName.Text
                cmd.Parameters.Add(New SqlParameter("@qq", SqlDbType.VarChar, 50))
                cmd.Parameters("@qq").Value = Me.QQ.Text
                cmd.Parameters.Add(New SqlParameter("@email", SqlDbType.VarChar, 50))
                cmd.Parameters("@email").Value = Me.email.Text
                cmd.Parameters.Add(New SqlParameter("@pic", SqlDbType.VarChar, 50))
                cmd.Parameters("@pic").Value = Me.pic.SelectedValue
                cmd.Parameters.Add(New SqlParameter("@zhuti", SqlDbType.VarChar, 50))
                cmd.Parameters("@zhuti").Value = Me.zhuti.Text
                cmd.Parameters.Add(New SqlParameter("@ly", SqlDbType.Text, 500))
                cmd.Parameters("@ly").Value = Me.ly.Text
                cmd.Parameters.Add(New SqlParameter("@ip", SqlDbType.VarChar, 50))
                cmd.Parameters("@ip").Value = ip
                cmd.Parameters.Add(New SqlParameter("@time", SqlDbType.DateTime, 8))
                cmd.Parameters("@time").Value = time
                conn.Open()
                Dim count As Integer = cmd.ExecuteNonQuery()
         cmd.Connection.Close()
                If count < 1 Then
                    Response.Write("<script>alert('信息添加失败');history.go(-1)</script>")
                Else
                    Response.Write("<script>alert('信息添加成功');history.go(-1)</script>")
            End If
        End Sub
    End Class
      

  4.   

    AutoEventWireup="false"!Page.IsPostBack
      

  5.   

    我是用Visual Studio .NET 2003写的,里面创立的页面默认就是AutoEventWireup="false"