「平成」を感じるもの

HTMLとPerl間のページ遷移について。

こんにちわ。
HTML(index.html)でログインフォーム(ユーザ名、パスワード)を作成し、そこに入力した情報を、Perl(login.pl)にPOST送信します。
Perlでは、受け取ったパラメータをチェックし、ユーザ名とそのパスワードが正しければ、もとのHTMLファイル(index.html)にページ遷移し、もともとあったログインフォームをJavaScriptで削除し、「ログイン中」と表示させる、ということをしたいのですがわからないところがあり投稿させていただきました。

現在、クライアントでは、JavaScriptを使ってログインフォームを作っています。そして、フォームの中の値を取得して、POST送信することはできます。次に、サーバにてPerlで受け取ったパラメータをチェックし、ユーザ名とパスワードの認証をとるところまではできています。しかし、その後にどうすべきかがわかりません。locationで、もとのHTMLファイル(index.html)を指定しても、ログインを認証したという情報は保持しておらず、それでは意味がありません。
Perlでログインを認証した後に、認証したという情報を保持したままHTMLページに遷移する事は可能でしょうか。可能であればその方法を教えていただきたく思います。
よろしくお願いします。

A 回答 (1件)

 Perlが使えるなら、わざわざ制約の大きいjavascriptなど使わなくてすむと思いますが????



perlにて、
if(チェックOK){
 $login_FORM = qq^ログイン中<form
 action="$ENV{'SERVER_NAME'}$ENV{'SCRIPT_NAME'}" metod="post">
 <input type="submit" size="10" value="ログアウト" </form>^;}
else{
 $login_FORM = qq^<form
 action="$ENV{'SERVER_NAME'}$ENV{'SCRIPT_NAME'}" metod="post">
 <input type="text" size="10" value="" name="userName">ID
 <input type="pasword" size="10" value="" name="pasword">パスワード
 </form>^;
}

print qq^現在のHTMLからjavascriptを除いたものをここに書く。
$login_FORM
続きのHTML^;
**************処理
__END__

この場合、index.cgiが、そのページになる。
 htmlの拡張子がよければ、htmlをCGIとして、サーバーに認識させるか、PATH_INFOで処理すること。
例) htt://hoge.com/userPage/index.html
              ^^^^^^^^^自体をCGIにする
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
JavaScriptを使う理由として、JQueryを使ってみたかったからです。あと、作ろうとしてるものは掲示板です。後出しの情報ですいません。
実際にJQueryを使ってみて、ログインフォームの作成から非同期でログイン認証を行うことはできたのですが、ログイン認証の部分は非同期ではなくページ遷移をしたかったことから今回のような質問をさせていただきました。ですので、作ろうとしてるシステムでは、Perlは純粋に受け取ったリクエストパラメータを処理して、処理された結果のデータをクライアントへ返し、クライアントでは、JQeuryを使ってごにょごにょしようと考えておりました。
迅速なご回答本当にありがとうございます。

お礼日時:2010/02/03 01:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報