標籤:輸入 dispatch var 提交 ons 不能 不同 creat string
網頁製作:關於實現簡易登入系統的分析
在我們製作網站的時候,是必定要實現串連資料庫進行使用者登入。
在使用者登陸的時候,整個過程就是在資料庫中尋找是否有與輸入的使用者名稱相同,如果有相同的使用者名稱則對資料庫中的該使用者的登入密碼與使用者輸入的密碼進行匹配,如果匹配得上則登入成功。若期間任一個過程出現問題,則登入失敗。
1、程式碼分析如下:
<%
<form method="post" action="shujuku.jsp">
<blockquote>帳號<input type="text" name="zh"></blockquote>
<blockquote>密碼<input type="password" name="ma"></blockquote>
<input type="submit" value="確定" onclick="shujuku.jsp">
</form>
上面的代碼功能是加入兩個編輯框和一個顯示為“確定”的提交按鈕,一個編輯框用來接收輸入的使用者名稱,並命名為zh,另一個編輯框命名為ma,用來接收使用者輸入的密碼。
表單提交後跳轉到shujuku.jsp頁面中。
2、下面分析shujuku.jsp頁面代碼(本例運用access資料庫,不同資料庫可進行類比)
request.setCharacterEncoding("GB2312");
String nam=(String)request.getParameter("zh");
String mima=(String)request.getParameter("ma");
//接收上一jsp頁面的zh和ma變數;
String classdriver="sun.jdbc.odbc.JdbcOdbcDriver";
String url="jdbc:odbc:user";
Class.forName(classdriver);
Connection conn=DriverManager.getConnection(url,"","");
Statement stm=conn.createStatement();
//串連資料庫語句
ResultSet rs=stm.executeQuery("select * from login where username=‘"+nam+"‘ and
passward=‘"+mima+"‘");
在使用者表中尋找是否有這個使用者和密碼是否正確;
if(nam!=""&&mima!="")
//不允許編輯框中有任一個為空白;
{
if(rs.next())
{
request.getRequestDispatcher("success.jsp").forward(request,response);
//登入成功跳轉到成功介面
}
else
request.getRequestDispatcher("fail.jsp").forward(request,response);
//登入失敗,跳轉到失敗介面
}
else
{%>
<script type="text/javascript">
alert("不可為空");
window.location.href=‘denglushouye.html‘;
</script>
<% }%>
//編輯框有輸入為空白時,進行報錯
3、success.jsp頁面的程式碼分析
<%
String nam=(String)request.getParameter("zh");
%>
//接收帳戶名稱
<form method="post" action="gouwuxitong.jsp">
<script type="text/javascript">
var name="<%=nam%>";
alert("登入成功");
window.location.href=‘gouwuxitong.jsp‘;
</script>
</form>
//表單提交,顯示成功提示,跳轉到gouwuxitong.jsp頁面。
登入失敗頁面由成功頁面容易寫出,並更簡單,在此不再羅列。
網頁製作:關於實現簡易登入系統的分析