ติดโค้ดครับ เราจะเรียกฟร์อมจากหน้าเมนูล็อกอินมาแสดงอีกหน้าทำไงครับ จะให้ดูดค้ดน่ะครับ
ผมว่าใช้วิธีการปกติที่นิยมกัน และถูกต้อง นะดีกว่านะครับ เพราะถ้ารับจากฟอร์มแล้วไปแสดงโดยตรงเลย คงไม่เหมาะแน่ ถ้าคุณเปิดกลับไปกลับมาระหว่างหน้าอื่นๆ ด้วยแล้ว ชื่อจะหายไปเลย
วิธีการทั่วไป
1. รับค่าจากฟอร์มแล้วไปเช็คเปรียบเทียบในฐานข้อมูลว่ามีชื่อผู้ใช้นี้อยู่หรือเปล่า และรหัสผ่านถูกต้องไหม
2. ถ้าข้อมูลถูกต้อง ให้ใช้ session เก็บค่า เช่น session("username") = request.fomr("username")
3. แสดงชื่อผู้ใช้ที่ออนไลน์อยู่ในแบบของ thaicreate เช่น response.write session("username") & " ออนไลน์!!"
แค่นี้แหละครับ ผิดพลาดประการใด ขออภัยมา ณ ที่นี้ด้วยครับ
Date :
5 Apr 2547 22:08:20
By :
s_comp
ขอบคุณครับ
Date :
7 Apr 2547 09:22:55
By :
drom_5157
ลองดูโค้ดpassword ของผมน่ะครับ
ตัวนี้เป็นหน้าจอล็อกอินครับ
<%@LANGUAGE="VBSCRIPT" CODEPAGE="CP_ACP"%>
<%
Const strDbTable = "asp"
strUserName = Request.Form("txtUserName")
strPassWord = Request.Form("txtUserPass")
strEmail = Request.Form("txtUserEmail")
If Request.Form("Submit") <> "" Then
If strUserName = "" AND strPassWord = "" Then
Response.Redirect"loginnew.asp?err=noall"
ElseIf strUserName = "" AND strPassWord <> "" Then
Response.Redirect"loginnew.asp?err=nou"
ElseIf strUserName <> "" AND strPassWord = "" Then
Response.Redirect"loginnew.asp?err=nop"
End If
strDbPathAndName = Server.MapPath("db/information.mdb")
strCon = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & strDbPathAndName
Set adoCon = Server.CreateObject("ADODB.Connection")
strCon = "DRIVER={Microsoft Access Driver (*.mdb)};uid=Author_Name;pwd=Author_Pass; DBQ=" & strDbPathAndName
adoCon.connectionstring = strCon
adoCon.Open
Set rsCommon = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT " & strDbTable & "User.Author_Name, " & strDbTable & "User.Author_Pass"
strSQL = strSQL & " FROM Member " & strDbTable & "User "
strSQL = strSQL & " WHERE " & strDbTable & "User.Author_Name ='" & strUserName & "'"
rsCommon.Open strSQL, adoCon,1,3
If NOT rsCommon.EOF Then
If strPassWord = rsCommon("Author_Pass") Then
Session("blnIsUserGood") = True
Response.Redirect"sample1.asp?name=" & rsCommon("Author_Name")
Else
Session("blnIsUserGood") = False
Response.Redirect"loginnew.asp?err=pass"
End If
Else
Response.Redirect"loginnew.asp?err=full"
End If
Set rsCommon = Nothing
adoCon.Close
Set adoCon = Nothing
Else
If Request.QueryString("name") <> "" Then
%>
<table width="518" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td align="center">
<h1>กรุณากรอกรหัสผ่าน</h1>
</td>
</tr>
</table>
<div align="center">
<p><br>
Welcome <b>
<% =Request.QueryString("name")%>
</b> to the password proteceted area of the web site. </p>
<%
Else
%>
<form method="post" action="loginnew.asp">
<table width="273" border="0" cellspacing="0" cellpadding="1" bgcolor="#000000" align="center">
<tr>
<td>
<table width="273" border="0" align="center" cellspacing="0" cellpadding="0" bgcolor="#CCCCCC">
<%
If Request.QueryString("err") <> "" Then
%>
<tr>
<td align="center" valign="bottom"class="text" colspan="2"><font color="red">
<%If Request.QueryString("err") = "noall" Then Response.Write("กรุณาใส่ชื่อ Username และ Password")%>
<%If Request.QueryString("err") = "nou" Then Response.Write("กรุณาใส่ชื่อ Username")%>
<%If Request.QueryString("err") = "nop" Then Response.Write("กรุณาใส่ชื่อ Password")%>
<%If Request.QueryString("err") = "pass" Then Response.Write("Password ที่คุณส่งมาไม่ถูกต้อง")%>
<%If Request.QueryString("err") = "full" Then Response.Write("ชื่อ Username และ Password ไม่มีในฐานข้อมูล")%>
</font>
</td>
</tr>
<%End If%>
<tr>
<td width="94" height="24" align="right" valign="bottom"class="text">User name:
</td>
<td valign="bottom" width="172">
<input type="text" name="txtUserName" class="input">
</td>
</tr>
<tr>
<td align="right" width="94"class="text">Password: </td>
<td width="172">
<input type="password" name="txtUserPass" class="input">
</td>
</tr>
<tr>
<td align="right" height="44" width="94"> </td>
<td height="44" width="172">
<input type="submit" name="Submit" value=" Login " class=button>
<input type="reset" name="Reset" value="Reset" class=button>
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>
<%
End If
End If
%>
ตัวนี้จะประกาศ session
<%@LANGUAGE="VBSCRIPT" CODEPAGE="CP_ACP"%>
<html>
<body>
<%
keyword=Request.Form("keyword")
if keyword="" then
keyword=Request.QueryString("keyword")
end if
%>
<p> </p><form name="form1" method="post" action="Sample1.asp">
ค้นหาจาก รายชื่อหนังสือ
<input type="text" name="keyword" value="<%=keyword%>">
<input type="submit" name="Submit" value="ค้นหา">
</form>
<%
if keyword="" then
Response.write("<br>กรุณากรอก Keyword เพื่อค้นหาจาก Field Description<hr>")
else
Set Conn=Server.Createobject("ADODB.Connection")
Conn.Open "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("db/information.mdb"),"" , ""
sql ="Select b_code, b_name, accouters,Publisher,dlend, return ,M_Prefix,M_Name,M_SName "
sql = sql & " From sumbook "
sql = sql & " where B_Name like '%"&keyword&"%' "
sql = sql & " order by b_code, rrent desc "
Set RS =Server.CreateObject("ADODB.Recordset")
RS.open Sql,Conn,1,3
If Rs.EOF Then
%>
<p>ไม่มีข้อมูลในตาราง !
<%Else%>
</p><form action="sample4.asp" method="post">
<table border="1" cellpadding=0 cellspacing=0>
<tr bgcolor=#9cbbff>
<th> </th>
<% for i = 0 to rs.fields.count - 1%>
<th><%=rs(i).name%></th>
<%next%>
</tr>
<% b_code = "" %>
<% bcount = 0 %>
<% do while Not RS.EOF %>
<% if b_code = rs("b_code") then%>
<% else %>
<% b_code = rs("b_code")%>
<% bcount = bcount + 1 %>
<tr bgcolor=#ddeeff>
<% if isnull(rs("dlend")) then %>
<td>
<input type=checkbox name=b_code2 value=<%=rs ("b_code")%>>
</td>
<% else %>
<% if isnull(rs("return")) then %>
<td> </td>
<% else %>
<td>
<input name=b_code2 type=checkbox value=<%=rs ("b_code")%>>
</td>
<% end if %>
<% end if %>
<% for i = 0 to rs.fields.count - 1%>
<% if isnull(rs(i)) then %>
<td valign=top><size=0>   </font></td>
<% else %>
<td valign=top><size=0><%=rs(i)%></font></td>
<% end if %>
<%next %>
</tr>
<% end if %>
<% RS.MoveNext %>
<% loop %>
</table>
<input type=submit " value="ดูรายการยืม">
</form>
<% date2=date() %>
ยืม =><%=date2 %> 0<br>
<br>
กำหนดส่ง => <% if weekday(date2+3) =7 then %>
<%=date2+5 %>
<% elseif weekday(date2+3) =1 then %>
<%=date2+4 %>
<% else %>
<%=date2+3 %>
<% end if %>
<%
recNo=1
Do While Not RS.EOF and recNo <= pageLen
%>
<tr>
<td><%= Rs("B_Name")%></td>
</tr>
<%
recNo=recNo+1
RS.MoveNext
Loop
rs.close
conn.close
%>
</table>
<%
end if
%>
<br>
<br>
<%
Author_Name = request ("txtUserName")
Author_Pass = request ("txtUserPass")
sql ="Select * form Member "
sql = sql & " Author_Name='" & Author_Name & "',Author_Pass='" & Author_Pass & "'"
sql = sql & " where Author_Name = '" & Author_Name & "'"
%>
ผู้ใช้ <% Author_Name = Request("txtUserName")%>
<%= sql %>
<br>
<br>
มีหนังสือทั้งหมดจำนวน <% =bcount %> รายการ
<%for idx = 1 to totalPage
%>
ลองอธิบายsession ให้ผมใหม่อีกครั้งน่ะครับ
ขอขอบคุณไว้ล่วงหน้าน่ะครับ
Date :
7 Apr 2547 09:27:43
By :
drom_5157
Load balance : Server 01