• 締切済み

セッション

セッションについて教えて下さい。 指定のID、パスワードでログインしようと思っています。 ソースを記載しますので、お教え下さい。 ID:aaa パスワード:111とします。 [送り側フォーム] <form action="/test2.asp" method="POST" id=form1 name=form1> <input type="text" name="id" value=""><br> <input type="password" name="passwd" value=""> <input type="submit" value="LOGIN" id=submit1 name=submit1> </form> とし、 [受け取り側、認証 test2.asp ] <% If Session("user_test") <> "1" Then Response.Redirect "/test.asp" Response.End() End If %>ここで認証を判断し、認証できなければtest.aspへもどるとし、 Dim id, passwd id = Request.Form("id") passwd = Request.Form("passwd") Session("user_login") = "id" Session("user_login") = "passwd" IF id = "aaa" and passwd = "111" THEN Session("user_test") = 1 Response.Write ("OK") ELSE Response.Write ("ちがうよ") END IF %> ID、パスワードをセッション変数にいれ、各ページで認証すると言う事をやりたいのですが、うまくいきません。 どこがわるいか、お教え下さい。 ※以前にも似たような質問をしているのですが、改善されずお手上げです。

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

受け手側に認証コードを記述されているのでしょうか? 送り手側ってことは無いですよね コードの記述順序が質問の通りであるなら認証部分のコードは実行されることが無いように思います If Session("user_test") <> "1" Then この判断式が常に成り立ってしまうからです Session("user_test")に何も設定されていないまたは1以外が設定されているなら test.aspに戻ってしまうためです 他のページ ログオン用のIDやパスワード使う目的でセッションに保存するなら Session("user_login_id") = id Session("user_login_pw") = passwd といった具合に Sessionの引数の中身を変更し代入する右辺は変数そのものを記述しないといけないでしょう どこまで動いているのか確認なさったほうがいいでしょう IIS + FrontPage + MS Script debuger などで ・・・ または Response.Writeでメッセージを出すとか

iroom0928
質問者

お礼

有り難う御座います。 おっしゃるとおり設定がされていない状態が理解できました。 有り難う御座います。 また、質問させて頂きます。^^

関連するQ&A

専門家に質問してみよう