Example : JSP Login Username and Password (Java) |
Example : JSP Login Username and Password (Java) ตัวอย่างการเขียน JSP กับการทำระบบ Login ด้วย Username และ Password แบบง่าย ๆ โดยในขั้นแรกเรามี Database และ Table เก็บ User / Password ของสมาชิก จากนั้นเราจะเขียน JSP มาตรวจสอบข้อมูลการ Login ว่าถูกต้องหรือไม่ ถ้าถูกต้องจะใช้การเก็บตัวแปรสมาชิกที่ Login ลงในตัวแปร Session เพื่อนำค่านั้นไปใช้ในหน้าอื่น ๆ เช่น หน้าแสดงรายละเอียด Profile ของสมาชิก
Example ตัวอย่างการเขียน JSP ทำระบบ Login ด้วย Username และ Password แบบง่าย ๆ
เนื่องจากใช้ Database ของ MySQL จึงเลือกใช้ MySQL Connector ด้วยการเรียกไฟล์ jar
mysql
CREATE TABLE `member` (
`UserID` int(4) unsigned zerofill NOT NULL auto_increment,
`Username` varchar(20) NOT NULL,
`Password` varchar(20) NOT NULL,
`Email` varchar(150) NOT NULL,
`Name` varchar(250) NOT NULL,
PRIMARY KEY (`UserID`),
UNIQUE KEY `User` (`Username`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
--
-- dump ตาราง `member`
--
INSERT INTO `member` VALUES (0001, 'weerachai', 'weerachai@1', '[email protected]', 'Weerachai Nukitram');
INSERT INTO `member` VALUES (0002, 'surachai', 'surachai@2', '[email protected]', 'Surachai Sirisart');
INSERT INTO `member` VALUES (0003, 'adisorn', 'adisorn@3', '[email protected]', 'Adisorn Bonsong');
โครงสร้างของ Table และ Data
ฐานข้อมูลของ MySQL
index.jsp
<%@ page import="java.sql.ResultSet" %>
<%@ page import="java.sql.SQLException" %>
<%@ page import="java.sql.Statement" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.DriverManager" %>
<html>
<head>
<title>ThaiCreate.Com JSP Tutorial</title>
</head>
<body>
<%
if(request.getParameter("Action") != null)
{
Connection connect = null;
Statement s = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connect = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase" +
"?user=root&password=root");
String username = request.getParameter("txtUsername");
String password = request.getParameter("txtPassword");
s = connect.createStatement();
String sql = "SELECT * FROM member WHERE " +
" Username = '" + username + "' AND " +
" Password = '" + password + "' ";
ResultSet rec = s.executeQuery(sql);
if(!rec.next())
{
out.print("<font color=red>Username and Password Incorrect!</font>");
} else {
rec.first();
session.setAttribute("sUserID",rec.getString("UserID"));
response.sendRedirect("profile.jsp");
}
} catch (Exception e) {
// TODO Auto-generated catch block
out.println(e.getMessage());
e.printStackTrace();
}
try {
if(s!=null){
s.close();
connect.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
out.println(e.getMessage());
e.printStackTrace();
}
}
%>
<form name="frmLogin" method="post" action="index.jsp?Action=Login">
Login<br>
<table border="1" style="width: 300px">
<tbody>
<tr>
<td> Username</td>
<td>
<input name="txtUsername" type="text" id="txtUsername">
</td>
</tr>
<tr>
<td> Password</td>
<td><input name="txtPassword" type="password" id="txtPassword">
</td>
</tr>
</tbody>
</table>
<br>
<input type="submit" name="Submit" value="Login">
</form>
</body>
</html>
profile.jsp
<%@ page import="java.sql.ResultSet" %>
<%@ page import="java.sql.SQLException" %>
<%@ page import="java.sql.Statement" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.DriverManager" %>
<html>
<head>
<title>ThaiCreate.Com JSP Tutorial</title>
</head>
<body>
<%
Object strUserID = session.getAttribute("sUserID");
if(strUserID == null) // Check Login
{
response.sendRedirect("index.jsp");
}
Connection connect = null;
Statement s = null;
try {
Class.forName("com.mysql.jdbc.Driver");
connect = DriverManager.getConnection("jdbc:mysql://localhost/mydatabase" +
"?user=root&password=root");
s = connect.createStatement();
String sql = "SELECT * FROM member WHERE UserID = '" + strUserID.toString() + "' ";
ResultSet rec = s.executeQuery(sql);
if(rec.next())
{
%>
Profile<br>
<table border="1" style="width: 300px">
<tbody>
<tr>
<td> UserID</td>
<td>
<%=rec.getString("UserID") %>
</td>
</tr>
<tr>
<td> Username</td>
<td>
<%=rec.getString("Username") %>
</td>
</tr>
<tr>
<td> Password</td>
<td>
<%=rec.getString("Password") %>
</td>
</tr>
<tr>
<td> Email</td>
<td>
<%=rec.getString("Email") %>
</td>
</tr>
<tr>
<td> Name</td>
<td>
<%=rec.getString("Name") %>
</td>
</tr>
</tbody>
</table>
<br>
<%} %>
<%
} catch (Exception e) {
// TODO Auto-generated catch block
out.println(e.getMessage());
e.printStackTrace();
}
try {
if(s!=null){
s.close();
connect.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
out.println(e.getMessage());
e.printStackTrace();
}
%>
</body>
</html>
Output
แสดงหน้า Login
กรณีที่ Login ผิด Username และ Password ไม่ถูกต้อง
ในกรณีที่ Login ถูกต้องจะแสดง Profile ของสมาชิก
อ่านเพิ่มเติมเกี่ยวกับ JSP และการติดต่อกับ Database ต่าง ๆ
|
ช่วยกันสนับสนุนรักษาเว็บไซต์ความรู้แห่งนี้ไว้ด้วยการสนับสนุน Source Code 2.0 ของทีมงานไทยครีเอท
|
|
|
By : |
ThaiCreate.Com Team (บทความเป็นลิขสิทธิ์ของเว็บไทยครีเอทห้ามนำเผยแพร่ ณ เว็บไซต์อื่น ๆ) |
|
Score Rating : |
|
|
|
Create/Update Date : |
2013-08-12 18:41:31 /
2017-03-27 16:30:12 |
|
Download : |
|
|
Sponsored Links / Related |
|
|
|
|
|
|
|