 |
|
ขั้นแรกสร้าง ฐานข้อมูล Mysql ก่อนครับ ยกตัวอย่างในที่นี้ผมตั้งชื่อว่า Userlogin สร้างเสร็จ ก็เข้าไปที่ ฐานข้อมุลที่เราสร้างขึ้น กด ตรง SQL เพื่อจะแทรกคำสั่ง SQL ในการสร้างฐานข้อมูล
ตามนี้ครับ
HTML Code:
Code
CREATE TABLE member (
user_id INT,
user VARCHAR(15),
pass VARCHAR(15)
)
เมื่อสร้างฐานข้อมูลเสร็จ ก็มาสร้าง PHP ให้เชื่อมต่อ ฐานข้อมุลแล้ว ตรวจสอบ User-Pass ตามปกติครับ ในที่นี้เราจะสร้าง php แบบ query string เพื่อรับค่าจาก GET นะครับ
HTML Code:
Code (PHP)
<?php
$hostname = "localhost";
$user = "=ชื่อผู้ใช้งานฐานข้อมูล";
$password = "พาสเวริ์ด";
$dbname = "Userlogin"; // ชื่อ database ที่ผมสร้าง
$tblname = "member"; // ชื่อตารางใน ฐานข้อมูล
$ip = $_SERVER["REMOTE_ADDR"]; //ไอพี
?>
<?php
mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
$idlogin=($_REQUEST['username']); //รับค่ามาแบบ query string
$passlogin=($_REQUEST['password']); // หรือใครมีความสามารถก็อาจจะทำรับค่ามา เป็น แบบ เข้ารหัส MD5 แล้วมาแปลงค่าเอาก็ได้ ครับ
$sql = "select * from $tblname where user='$idlogin' and pass='$passlogin'";
$dbquery = mysql_db_query($dbname, $sql);
$num_rows = mysql_num_rows($dbquery);
if($num_rows==1){
echo ("loginok"); // ถ้าค่าถูกต้องให้ echo loginok
}else {
echo $ip; // ถ้าไม่ถูกต้อง แสดงไอพี
}
?>
ผมวางไฟล์ php ที่จะใช้ VB6 เชื่อมต่อไว้ที่ path http://localhost/login/login.php นะครับ
ต่อไปก็มาที่โค้ด VB6 โค้ดนี้คิดเองทั้งนั้น เป็นโค้ดแบบบ้านๆ Basic Basic ครับ อาจจะดูตลกๆ ผมก็ไม่ค่อยมีความรู้เยอะเท่าไหร่แบบว่าเพิ่งหัดเขียนมาไม่ถึง 2 ปี ก็อยากมาแชร์ความรู้สำหรับคนที่กำลังศึกษา VB อยู่ อาจจะเป็นความรู้ที่แปลกใหม่มั้งก็ได้
เปิด VB6 สร้าง Exe Project แบบปกติครับ
เพิ่ม textbox มา ชื่อ txtusername , txtpassword , serverrespon
เพิ่ม timer 1 ตัว status = False Interval = 750 , command botton 1 อัน ชื่อ Btlogin
แล้วเพิ่ม Control Inet มา 1 ตัว
โค้ดครับ
HTML Code:
Code (VB.NET)
Private Sub Form_Initialize()
serverrespon.text = "loginok"
KeyPreview =True
End sub
Private Sub btlogin_Click()
Dim strURL As String
On Error Resume Next
If Trim(txtusername.Text) = "" Or Len(Trim(txtusername.Text)) = 0 Then
MsgBox "กรุณากรอก (Username)ให้ถูกต้อง.", vbOKOnly + vbExclamation, "Login"
Exit Sub
ElseIf Trim(txtpassword.Text) = "" Or Len(Trim(txtpassword.Text)) = 0 Then
MsgBox "กรุณากรอก(Password) ให้ถูกต้อง.", vbOKOnly + vbExclamation, "Login"
Exit Sub
End If
btlogin.Enabled = False
strURL = "http://localhost/login/login.php?" & "username=" + txtusername.Text & "&password=" + txtpassword.Text
Inet1.OpenURL (strURL)
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
Dim ser As String
If Inet1.OpenURL = serverrespon.Text Then
MsgBox "สวัสดีคุณ" & txtusername.Text & " ยินดีต้อนรับสู่ โปรแกรมของเรา.", vbOKOnly + vbInformation, "Login Status"
Timer1.Enabled = False
Unload Me
main.Show // Login ถูกต้อง เข้าสู่หน้าโปรแกรมถัดไป
Else
MsgBox "ไม่สามารถเข้าสู่โปรแกรมได้.", vbOKOnly + vbInformation, "Login Status"
txtusername.Text = ""
txtpassword.Text = ""
txtusername.SetFocus
btlogin.Enabled = True
End If
Timer1.Enabled = False
End Sub
//สร้าง Sub ขึ้นมาเพื่อให้ เวลา Login สามารภกด Enter แล้วเหมือนกดปุ่ม Login เลย
Sub Enterlogin()
Dim strURL As String
On Error Resume Next
If Trim(txtusername.Text) = "" Or Len(Trim(txtusername.Text)) = 0 Then
MsgBox "กรุณากรอก (Username)ให้ถูกต้อง.", vbOKOnly + vbExclamation, "Login"
Exit Sub
ElseIf Trim(txtpassword.Text) = "" Or Len(Trim(txtpassword.Text)) = 0 Then
MsgBox "กรุณากรอก(Password) ให้ถูกต้อง.", vbOKOnly + vbExclamation, "Login"
Exit Sub
End If
btlogin.Enabled = False
strURL = "http://localhost/login/login.php?" & "username=" + txtusername.Text & "&password=" + txtpassword.Text
Inet1.OpenURL (strURL)
Timer1.Enabled = True
End Sub
// โค้ดเกี่ยวกับ Key board ให้รับค่าเฉพาะ อังกฤษ และ ต่างๆ อีกมากมาย Credits อาจารย์ท้องก้อน G2gNet
Private Sub txtPassword_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyDown Then SendKeys "{TAB}"
If KeyCode = vbKeyUp Then SendKeys "+{TAB}"
End Sub
Private Sub txtPassword_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
SendKeys "{TAB}"
KeyAscii = 0
Else
KeyAscii = CheckAlphaNumeric(KeyAscii)
End If
End Sub
Private Sub txtUserName_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyDown Then SendKeys "{TAB}"
If KeyCode = vbKeyUp Then SendKeys "+{TAB}"
End Sub
Private Sub txtUserName_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
SendKeys "{TAB}"
KeyAscii = 0
Else
KeyAscii = CheckAlphaNumeric(KeyAscii)
End If
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyEscape: End
Case vbKeyReturn: Call Enterlogin
End Select
End Sub
Public Function CheckAlphaNumeric(Index As Integer) As Integer
Select Case Index
Case 48 To 57, 65 To 90, 97 To 122
CheckAlphaNumeric = Index
Case 8
Case 13
Case Else
Index = 0
End Select
CheckAlphaNumeric = Index
End Function
ช่วยอธิบายขั้นตอนให้พอเข้าใจหน่อยได้ไหมอ่ะครับบหรือเขียนโค๊ดซอดโค๊ดมาเเนบให้ด้วยก็ได้ครับ
ทำเป๊นวิดิโอก็ได้ครับใครทำได้ ผมขอจ้าง ครับ 300-500 ครับ
PM มาหาผมเลยน่ะครับ
Tag : .NET, MySQL, VBScript, VB.NET
|
ประวัติการแก้ไข 2010-12-25 13:20:50
|
 |
 |
 |
 |
Date :
2010-12-25 02:43:58 |
By :
maiza007 |
View :
2315 |
Reply :
4 |
|
 |
 |
 |
 |
|
|
|
 |