Pages

Thursday 5 July 2012

Membuat Login Form di ASP.NET

Login form di ASP.NET diperlukan jika aplikasi memerlukan level akses dari user yang menggunakan aplikasi. Pada posting kali ini penulis akan memberikan contoh login form pada aplikasi ASP.NET.

Pada contoh form login di atas kita harus menyediakan 1 buah text box untuk NIK, 1 buah text box untuk Password, 1 buah tombol dan 1 buah label.

Berikut adalah isi file login.aspx
  1. <%@ Page Language="VB" debug="true" AutoEventWireup="false" CodeFile="login.aspx.vb" Inherits="login" %>  
  2.   
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  4.   
  5. <html xmlns="http://www.w3.org/1999/xhtml" >  
  6. <head runat="server">  
  7. <title>Login Page</title>  
  8. </head>  
  9. <body>  
  10. <form id="form1" runat="server">  
  11. <div>  
  12.     <table width="300">  
  13.         <tr>  
  14.             <td style="width: 150px">  
  15.                 NIK</td>  
  16.             <td style="width: 150px">  
  17.                 :  
  18.                 <asp:TextBox ID="NIK"  
  19.                 runat="server"  
  20.                 Width="120px"></asp:TextBox></td>  
  21.         </tr>  
  22.         <tr>  
  23.             <td style="width: 150px">  
  24.                 PASSWORD</td>  
  25.             <td style="width: 150px">  
  26.                 :  
  27.                 <asp:TextBox ID="PASSWORD"  
  28.                 runat="server"  
  29.                 TextMode="Password"  
  30.                 Width="120px"></asp:TextBox></td>  
  31.         </tr>  
  32.         <tr>  
  33.             <td align="center" colspan="2">  
  34.                 <asp:Button ID="cmdOK"  
  35.                 runat="server"  
  36.                 Text="OK"  
  37.                 Width="88px" /></td>  
  38.         </tr>  
  39.     </table>  
  40.        
  41.   
  42.     <asp:Label ID="Label1"  
  43.     runat="server"></asp:Label>  
  44.   
  45.       
  46.   
  47.   
  48. </div>  
  49. </form>  
  50. </body>  
  51. </html>  

Pada baris pertama file login.aspx terdapat
  1. CodeFile="login.aspx.vb"  
Ini menunjukkan bahwa file login.aspx menyimpan file kode pada file login.aspx.vb.

Selain file login.aspx kita juga harus membuat file login.aspx.vb untuk memyimpan kode program proses login. Proses autentikasi login adalah user mngisi NIK dan Password kemudian mengklik tombol OK pada form login.

Pada event on Click dilakukan proses pemeriksaan NIK dan Password, apakah kombinasi NIK dan Password cocok dengan data di tabel Karyawan. Jika sesuai maka proses login berhasil, jika tidak maka proses login gagal.

Berikut kode program pada file login.aspx.vb

  1. Imports System.Data  
  2. Imports System.Data.OleDb  
  3.   
  4. Partial Class login  
  5.  Inherits System.Web.UI.Page  
  6.   
  7.  Protected Sub cmdOK_Click(ByVal sender As ObjectByVal e As System.EventArgs) Handles cmdOK.Click  
  8.      Dim strConnection As String = _  
  9.      ConfigurationManager.ConnectionStrings("AccessConnectionString").ConnectionString  
  10.      Dim strNik As String  
  11.      Dim strPwd As String  
  12.      Dim strQuery As String = "SELECT * FROM karyawan WHERE NIK='" & Me.NIK.Text & "';"  
  13.      Dim myConnection As New OleDbConnection(strConnection)  
  14.      Dim myCommand As New OleDbCommand(strQuery, myConnection)  
  15.      myConnection.Open()  
  16.      Dim myDataReader As OleDbDataReader = myCommand.ExecuteReader()  
  17.      strNik = ""  
  18.      strPwd = ""  
  19.      While myDataReader.Read()  
  20.   
  21.          strNik = myDataReader.GetString(0)  
  22.          strPwd = myDataReader.GetString(5)  
  23.   
  24.      End While  
  25.      myDataReader.Close()  
  26.      myConnection.Close()  
  27.      If strNik = "" Then  
  28.          Me.Label1.Text = "NIK tidak ada!"  
  29.      Else  
  30.          If strPwd <> Me.PASSWORD.Text Then  
  31.              Me.Label1.Text = "Password anda salah!"  
  32.          Else  
  33.              Me.Label1.Text = "Login sukses!"  
  34.          End If  
  35.      End If  
  36.   
  37.  End Sub  
  38. End Class  

2 comments:

  1. tanya, misalkan saya punya form di web1.com untuk edit-tambah-delete karyawan, kemudian saya membuat web2.com yg salah satu fasilitasnya ada form untuk edit-tambah-delete karyawan yg ada didalam web1.com, tetapi form di web2.com ini tidak terkoneksi kedatabasenya tetapi terkoneksi ke form web1.com.
    jadi jika saya mengupdate data dari web2.com (form tidak terkoneksi kedatabase web1.com tetapi terkoneksi ke form web1.com tersebut) maka otomatis data di web1.com akan berubah... ada yg tau caranya?

    ReplyDelete