asp認証コード付きユーザログインおよび検証コード実装
各種資料を参照した後,ユーザログインモジュールを実現した.主な難点はランダム検証コードの実現と検証コードのページ間の伝達操作に集中している.実装コードは次のとおりです.
login.asp:
check.asp:
プログラムを分かりやすくするために、以上の実装はデータベースの接続を考慮していません.認証コードのリフレッシュの問題もあります.
login.asp:
- <%
- FUNCTION GEN_KEY(digits)
- dim char_array(80)
- for i=0 to 9
- char_array(i)=cstr(i)
- next
- for i=10 to 35
- char_array(i)=chr(i+55)
- next
- for i=36 to 61
- char_array(i)=chr(i+61)
- next
- randomize
- do while len(output)<digits
- num=char_array(int((62-0+1)*rnd+0))
- outputoutput=output&num
- loop
- gen_key=output
-
- end function
- %>
- <html>
- <head></head>
- <body>
- <form name="form1" action="check.asp">
- :
- <BR>
- :<INPUT TYPE=TEXTBOX NAME="TXTNAME"></input>
- <BR>
- :<INPUT TYPE=TEXTBOX NAME="TXTPWD"></input>
- <BR>
- :<INPUT TYPE=TEXTBOX NAME="TXTYZM">
- </INPUT>
- <%
- session("verifycode")=gen_key(4)
- response.write session("verifycode")
- %>
-
- <BR>
- <input type=submit value=" " />
- <input type=reset value=" " />
- </form>
-
- </body>
- </html>
check.asp:
- <%
- dim user
- dim pwd
- dim yzm
- user=trim(request("txtname"))
- pwd=trim(request("txtpwd"))
- yzm=trim(request("txtyzm"))
-
- if user="" or pwd="" then
- response.write "<script>alert(' , !');document.location.href='login.asp';</script>"
- response.end
- else
-
- if user="lc" then
- if pwd="1234" then
- if session("verifycode")=yzm then
- response.redirect "http://www.baidu.com"
- else
- response.write " !"
- end if
- else
- response.write " !"
- end if
- else
- response.write " !"
- end if
-
- end if
-
-
- %>
プログラムを分かりやすくするために、以上の実装はデータベースの接続を考慮していません.認証コードのリフレッシュの問題もあります.