Assalmualaikum Warahmatullahi Wabarakatu
Bismilahirrahmanirrahiim
Sebelum kita memulai mengerjakan sesuatu ada baiknya kita berdoa terlebih dahulu agar apa yang kita kerjakan dapat berkah dari allah SWT, Aamiin.
Pada kesempatan kali ini saya akan berbagi pengalaman dalam membuat form login dengan menggunakan visual studio 2010 ultimate dan Database Mysql. Membuat login ini gampang-gampang susah hehe, banyak tutorial login namun kadang hasilnya tidak nampak atau tidak berhasil. Langsung saja saya akan membagi informasi membuat login pada visual studio 2010 ultimate dan database mysql dengan mudah.
Pertama : Anda harus membuat database dan tabel pada phpmyadmin. Saya membuat database dengan nama latihan dan tabel login. Lalu buat 2 field dengan nama username dan password dan selanjutnya isikan field dengan nama username 'admin' dan password 'admin'
Kedua : Buka Visual Studio 2010, lalu buat nama project sesuai keinginan anda. Untuk mengetest apakah database mysql sudah terkoneksi dengan visual studio 2010 anda silahkan lakukan test koneksi pada tutorial berikut ini untuk memastikan bahwa visual studio anda sudah bisa dikoneksikan dengan mysql.
Ketiga : Apabila koneksi sudah dibuat dan berhasil maka anda bisa melanjutkan ke tahap berikutnya. Selanjutnya anda silahkan tambahkan 3 label untuk memberi nama, 2 textbox untuk mengisi data login dan 2 button sebagai tombol untuk mengklik
Sebelum ke tahap berikutnya ubah name pada button "LOGIN" dan "BATAL" pada jendela properties dengan nama "login" dan "batal". Sesuaikan saja biar mudah mengingatnya.
Keempat : Memasukan script. Karena kita menggunakan mysql, maka kita akan masukan import mysql.data.mysqlClient nya.
Imports MySql.Data.MySqlClient
Selanjutnya kita akan membuat deklarasi variabel untuk menghitung kesalahan login
Public Class Form1
Dim iFail As Integer
Lalu memberikan nilai =0 untuk memulai perhitungan pada event form load
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
iFail = 0
End Sub
Selanjutnya kita akan buat script check kondisi apakah login berhasil atau tidak
Function CheckLogin(ByVal UserName As String, _
ByVal Password As String) As Integer
Dim conn As MySqlConnection
Dim cmd As New MySqlCommand
Dim objValue As Object
conn = New MySqlConnection()
conn.ConnectionString = "server=localhost;user id=root;" & _
"password=;database=latihan"
Try
conn.Open()
cmd.Connection = conn
cmd.CommandText = "SELECT COUNT(username) AS getin " & _
"FROM login WHERE username = " & _
"'" & UserName & "' AND " & _
"password = '" & Password & "'"
objValue = cmd.ExecuteScalar()
conn.Close()
If objValue Is Nothing Then
Return 0
Else
Return objValue.ToString
End If
Catch myerror As MySqlException
MessageBox.Show("Error: " & myerror.Message)
Finally
conn.Dispose()
End Try
Return 0
End Function
Setelah itu, klik 2 kali pada button "LOGIN" dan masukan script berikut untuk melakukan proses login
Private Sub login_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles login.Click
Dim strUserName As String = TextBox1.Text
Dim strPassword As String = TextBox2.Text
If strUserName = String.Empty Then _
MsgBox("Username belum diisi!") : Exit Sub
If strPassword = String.Empty Then _
MsgBox("Password belum diisi!") : Exit Sub
Try
If CheckLogin(strUserName, strPassword) > 0 Then
MsgBox("Welcome " & strUserName & "!")
'tulis code lainnya setelah login disini
Form2.Show()
Else
iFail = iFail + 1
If iFail >= 3 Then
MsgBox("Gagal login 3 kali." & vbCrLf & _
"Aplikasi akan ditutup.")
End
End If
MsgBox("Username/password Salah." & vbCrLf & _
"Silahkan cek lagi!")
End If
Catch ex As Exception
MsgBox("Error Login: " & ex.Message)
End Try
End Sub
Terakhir, klik 2 kali pada button "BATAL" dan masukan script berikut
Private Sub batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles batal.Click
Me.Close()
End Sub
End Class
Dibawah ini merupakan script keseluruhan
Imports MySql.Data.MySqlClient
Public Class Form1
Dim iFail As Integer
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
iFail = 0
End Sub
Function CheckLogin(ByVal UserName As String, _
ByVal Password As String) As Integer
Dim conn As MySqlConnection
Dim cmd As New MySqlCommand
Dim objValue As Object
conn = New MySqlConnection()
conn.ConnectionString = "server=localhost;user id=root;" & _
"password=;database=latihan"
Try
conn.Open()
cmd.Connection = conn
cmd.CommandText = "SELECT COUNT(username) AS getin " & _
"FROM login WHERE username = " & _
"'" & UserName & "' AND " & _
"password = '" & Password & "'"
objValue = cmd.ExecuteScalar()
conn.Close()
If objValue Is Nothing Then
Return 0
Else
Return objValue.ToString
End If
Catch myerror As MySqlException
MessageBox.Show("Error: " & myerror.Message)
Finally
conn.Dispose()
End Try
Return 0
End Function
Private Sub login_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles login.Click
Dim strUserName As String = TextBox1.Text
Dim strPassword As String = TextBox2.Text
If strUserName = String.Empty Then _
MsgBox("Username belum diisi!") : Exit Sub
If strPassword = String.Empty Then _
MsgBox("Password belum diisi!") : Exit Sub
Try
If CheckLogin(strUserName, strPassword) > 0 Then
MsgBox("Welcome " & strUserName & "!")
'tulis code lainnya setelah login disini
Form2.Show()
Else
iFail = iFail + 1
If iFail >= 3 Then
MsgBox("Gagal login 3 kali." & vbCrLf & _
"Aplikasi akan ditutup.")
End
End If
MsgBox("Username/password Salah." & vbCrLf & _
"Silahkan cek lagi!")
End If
Catch ex As Exception
MsgBox("Error Login: " & ex.Message)
End Try
End Sub
Private Sub batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles batal.Click
Me.Close()
End Sub
End Class
Tambahkan 1 form lagi dengan nama form2
Apabila proses login masih gagal, lakukan ini : klik kanan pada project login
lalu pilih add reference dan pilih .NET dan pilih mysql.data
taraaammm login anda sudah berhasil.
Jika ada kebingungan silahkan komentar saja, agar bisa sama-sama belajar, karena saya juga masih banyak kekurangan.
Sekian dari saya, semoga tutorial ini membantu anda. Happy Great Day!!!
0 komentar:
Posting Komentar