使用ASP.net 手寫登入程式碼片段

摘要:使用ASP.net 手寫登入

此程式碼為 MIS2000 Lab老師 的書上 所參考,放在這裡日後方便查詢

'命名空間(NmaeSpace)

Imports System.Data           '不管使用哪種語法來撰寫ASP.NET,必須先參考System.Data這個命名空間。
Imports System.Data.SqlClient '允許你連接到MS SQL Server7.0以後版本(2000~2008)、執行命令並執行結果。
Imports System.Web.Configuration '宣告web config'

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'.NET的資料提供者(Data Provider)

'Connection物件:提供與資料來源(例如:資料庫)的連接
'Command   物ru04:可讓你存取資料庫命令,執行SQL指令,已傳回資料、修改/刪除資料、執行預存程序,並傳送擷取參數資訊。

'DataReader :提供資料來源的高效能資料流,以快速存取『順向、『唯讀』資料。因為只提供順向操作,因此不可以做分頁的功能。
'DataAdapter:會提供DataSet物件與資料來源之間的橋接器,使用Command物件來執行SQL指令。
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Connection物件(連接物件))
'若要在資料存放區與你的應用程式間移動資料,你必須先與資料存放區連接。
'SqlConnection:管理MS SQL Server 7.0或以後版本連接的物件。


Dim Conn As SqlConnection = New SqlConnection

Conn.ConnectionString = WebConfigurationManager.ConnectionStrings("資料庫連接字串").ConnectionString

Dim cmd As SqlCommand = New SqlCommand("select * from member where Username='" + Username.Text + "'and Password='" + Password.Text + "'", Conn)

Dim dr As SqlDataReader = Nothing
 Try
  Conn.Open()
  dr = cmd.ExecuteReader
  If dr.HasRows Then
     dr.Read()
     erro.Text = "登入成功"
     Session("Login") = "OK"
     Session("Username") = Username.Text
     loginok.Text = "你好" + Session("Username")
     cmd.Cancel()
     dr.Close()
     Conn.Close()
     Conn.Dispose()
     Response.Redirect("index.aspx")
Else


     erro.Text = "帳號密碼可能有誤,請再次輸入"
     cmd.Cancel()
     dr.Close()
      Conn.Close()
      Conn.Dispose()

End If
    Catch ex As Exception
Response.Write("Error Message------" + ex.ToString() + "") 

End Try
End Sub

 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 

If Session("Username") = "" Then loginok.Text = "你好,Guest!" 

Else logout.Visible = True 

 loginok.Text = "你好!!~" + Session("Username") 
End If