javaservletについて勉強中 ログインIDとログインPWを使ってログインするシステムの作成方法

このQ&Aのポイント
  • javaservletを使用して、ログインIDとログインPWを使ってログインするシステムを作成する方法について勉強しています。
  • 初めの画面でIDとPWを入力し、次の画面にPOSTで引継ぎができます。その先の画面でも保存されたIDを引き継ぐ方法について知りたいです。
  • 具体的なコードの例として、1の画面のコードや2の画面のコードを示しています。3の画面への遷移方法も記載しています。
回答を見る
  • ベストアンサー

javaservletについて

今 javaservletの勉強をしています。 今回 ログインIDとログインPWを使ってログインするシステムを作っているのですが。 最初の画面でIDとPWを入力し次の画面にPOSTで引継ぎはできました。その先の画面でずっとIDを保存したまま続けたいです。 つまり 1の画面でID、PW入力 2の画面にPOSTで引継ぎ 3の画面でもID、PWを引継ぎさせる。 ということをやりたいです。 1の中身はこうなっております。 package ado; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Adomain extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException { try{ response.setContentType("text/html; charset=Shift_JIS"); PrintWriter pw = response.getWriter(); pw.println("<html>\n" +"<head><title>アドレス帳</title></head>\n" +"<bod]y><center>\n" +"<h2>アドレス帳へようこそ!</h2>\n" +"<hr />\n" +"ユーザーIDとパスワードを入力して下さい。<br />" +"<br />\n" +"<form\n" +"action=\"http://localhost:8080/adoresu/Adosousa\"\n" +"method=\"POST\">\n" +"ユーザーID\n" +"<input type=\"text\" name=\"id\"><br>\n" +"パスワード\n" +"<input type=\"text\" name=\"pw\"><br>\n" +"<input type=\"submit\" value=\"送信\"><br>\n" +"</form>\n" +"</center></body>\n" +"</html>\n"); } catch(Exception e){ e.printStackTrace(); } } } これを2の画面でdoPOSTで受け取っていてそのままID、PWを3の画面まで持っていきたいです。 3の画面への飛び方は pw.println("<html>\n" +"<head><title>操作画面</title></head>" +"<body><center>" +"<form action=\"http://localhost:8080/adoresu/Adoitiran\">" +"<input type=\"submit\" value=\"アドレス一覧\">" +"</form>" +"<form action=\"http://localhost:8080/adoresu/Adosinki\">" +"<input type=\"submit\" value=\"アドレス新規登録\">" +"</form>" +"</body></center>\n" +"</html>"); こうなっています。 どなたかご教授お願いします。

  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.1

ごめん、何をしたいのかさっぱり。 引き継がせるってどういう意味で使っていますか? 画面に表示したいってこと?  →出力すればいい データとして保持したいってこと?  →HttpSessionに格納するなりファイルやDBに保存するなりすればいい それとも何かもっと別なこと?

momonyoki
質問者

お礼

すいません説明が下手でした。データを保持?したいと思っていました。 後で自分で調べた結果 hiddenでつなぐことにしました ありがとうございました。

関連するQ&A

  • パスワードはどこですか?

    自分でパスワードを決めると思うのですが、さっぱりです。どこに書けばいいのか教えてください 知識がある方にとっては簡単だと思いますがどうぞよろしくお願いします。 #▼入室フォーム###### sub FM{ print "Content-type: text/html\n\n"; print "<html><head><title>$TITLE</title></head><body><form method=post action=$ADMIN_CGI><input type=hidden name=M value=C>管理室<hr>\n"; print " 管理者ID<BR><input name=ID'' size=8><BR> パスワード<BR><input name=PASS'' size=8><BR> <input type=submit value=入室>\n"; print "</form></body></html>\n"; exit; }

    • ベストアンサー
    • CGI
  • 複数のフォームから送信

    複数のフォームからtextの値を送信したいのですができますか?〒番号を入力して検索ボタンをおすと住所がでてきて最後に登録をしたいです。検索だけのプログラムはできてますがフォームを二つにすると両方のsubmitが登録になります・・・ 一応自分でいろいろためしましたがだめでした。。。 html,php,javascriptです。 二つともだめでした。。。。 rei1.php ------------------------- <html> <body <form method="POST" action="1.php"> お名前:<input type="text" name="name"> <br> <br> <form method="POST" action="yubin.php"> 〒:<input type="text" name="yubin"> <input type="submit" value="検索"> <br> 住所:<input type="text" name="zyu"> <br> </form> メールアドレス:<input type="text" name="email"> <br> <input type="submit" value="登録する"> </form> </body> </html> -------------------------------------- rei2.php -------------------------------------- <html> <head> <script language="javascript"><!-- function send() { document.nform.submit(); document.nform2.submit(); document.nform3.submit(); } //--></script> </head> <body> <form name="nform" method="POST" action="1.php"> お名前:<input type="text" name="name"> <br> </form> <form name="nform2" method="POST" action="yubin.php"> 〒:<input type="text" name="yubin"> <input type="submit" value="検索"> <br> 住所:<input type="text" name="zyu"> <br> </form> <form name="nform3" method="POST" action="1.php"> メールアドレス:<input type="text" name="email"> <br> <input type="submit" value="登録する"> </form> </body> </html> ------------------------------------

  • phpでmysqlに接続してデータを登録

    入力フォームをhtmlに作って それをidとpassを入力して それをmysqlに登録したいのですが うまくできません <html> <head> <meta http-equiv="Content-Type"content="text/html;charset="utf-8"/> <title>登録</title> </head> <body> <form action="touroku.php"method="post"> 登録id :<br /> <input type="text"name="id"size="10"value="" /><br /> パス:<br /> <input type="text"name="pass"size="10"value="" /><br /> <br /> <input type="submit"value="登録する" /> </form> </body> </html> という感じに 入力フォームは作ったのですが それからそれをmysqlにどうやって登録をするのかわかりません 詳しく解説されてわかりやすいサイトなどを教えてください もしくは教えてください

  • Perlがサーバー上でうごきません

    htmlファイルには <html> <form action="form2.cgi" method="get"> 食品名1<input type="text"name="form1"> <br> 食品名2<input type="text"name="form2"> <input type="submit"value="送信"> </form> </html> cgiファイルには #! /usr/bin/perl require "cgi-lib.pl"; &ReadParse(); print "Content-type:text/html\n"; print "\n"; print "<html>\n"; print "<head>\n"; print "<title>フォーム</title>\n"; print "</head>\n"; print "<body>\n"; print "おいしい$in{'form1'}\n; print "まずい$in{'form2'}\n; print "</body>\n"; print "</html>\n"; exit; cgi-lib.plはサーバーにいれております。 どうしてうごかないのでしょうか。

    • ベストアンサー
    • Perl
  • phpでmysqlに接続してテーブルのデータを抽出

    テーブルのデータを抽出したいのですけど テーブルに idと対応するpassワードがあったとすると 入力フォームみたいのを作って 認証したいidとpassワードを入力してもらって それをテーブルにあるのか確認したい場合どうしたらいいでしょうか? 入力フォームはこうなっています <html> <head> <title>ユーザ認証</title> </head> <body> ユーザ認証<br> <form action="ninsyou.php" method="post" name="form1"> ユーザ名: <input name="id" type="text" id="fUserName"> <br> パスワード: <input name="pass" type="password" id="fPassWd"> <input type="submit" name="Submit" value="認証"> <input type="reset" name="Submit2" value="クリア"> </form> </body> </html> わかりにくい質問ですみません。

    • ベストアンサー
    • MySQL
  • 現在のカーソル行を知りたい。

    'KeyDown'の下記サンプルコードでfunction msgにきたときに 何番目のテキストボックスでKYyDownされたか知りたいのですが、 関数があればお教え下さい。 <html> <head> <script type="text/Javascript"> <!-- function msg(str) { alert("check"); } //--> </script> </head> <body onKeyDown="msg('KeyDown')"> key<br> <form name="myForm" method="POST" target="_self"> <input type="text" name="text1><BR> <input type="text" name="text1"><BR> <input type="text" name="text1"><br> <input type="submit" name="button1" value="button"> </form> </body> </html>

  • perlがうごきません

    htmlファイルには <html> <form action="form2.cgi" method="get"> 食品名1<input type="text"name="form1"> <br> 食品名2<input type="text"name="form2"> <input type="submit"value="送信"> </form> </html> cgiファイルには #! /usr/bin/perl require "cgi-lib.pl"; &ReadParse(); print "Content-type:text/html\n"; print "\n"; print "<html>\n"; print "<head>\n"; print "<title>フォーム</title>\n"; print "</head>\n"; print "<body>\n"; print "おいしい$in{'form1'}\n"; print "まずい$in{'form2'}\n"; print "</body>\n"; print "</html>\n"; exit; cgi-lib.plはサーバーにいれております。 どうしてうごかないのでしょうか。 perlの場所も正確です。

    • ベストアンサー
    • Perl
  • Servletでテキストボックスに入力された内容を追記したい。

    Servletでテキストボックスとボタンを置きsubmitすると下にいくつも追記できるようにしたいです。そのときに ブラウザを複数起動しても独立して稼動できるようにしたいです。 自分の考えとしては、submitしたデータをArrayListに取り込んでhtmlに返そうと思って下記のブログラムを 書いてみましたがうまく作動しませんでした。 何か良い方法がありましたら教えてください。 import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; public class ServletTest extends HttpServlet { public void doGet(HttpServletRequest req,HttpServletResponse res) throws IOException, ServletException { ArrayList al = new ArrayList(); // ヘッダに出力形式をセット res.setContentType("text/html; charset = Shift_JIS"); // 出力ストリームを作成 PrintWriter pw = res.getWriter(); // テキストボックスからデータを受け取る String input = req.getParameter("param"); al.add(input); // テキストボックスが空の場合 if(input == null) { input = ""; } // HTML文を出力 pw.println("<html><head>"); pw.println("<title>SrvletTest</title>"); pw.println("</head>"); pw.println("<body>"); pw.println("<form>"); pw.println("<input type = 'text' name = 'param' maxlength = 20>"); pw.println("<input type = 'submit'><br>"); for(int i = 0; i < al.size(); i++) { pw.println(al.get(i)); } pw.println("</form>"); pw.println("</body></html>"); pw.close(); } }

    • ベストアンサー
    • Java
  • Tomcatを使用したWebログイン画面

    Tomcatを使用して、 サーバ(logintest.html)にブラウザからアクセスしてログイン画面を表示させます。 ユーザIDがuser、パスワードがpasswordだった場合は「ログイン成功」と表示し、それ以外は「ログイン失敗」と表示させます。 Servletのソース(loginteset.java)がコンパイルエラーになります。 アドバイスをいただけませんか? logintest.html <html> <head> <meta http-equiv="content-type" content="text/html; charset=Windows-31J" /> <title>Login</title> </head> <body> <form action="./checkservlet" method="post">   ユーザIDを入力してください : <input type="text" name="userid" size="20" /> <br><br>   パスワードを入力してください : <input type="password" name="userpass" size="20" /> <br><br> <input type="submit" value="ログイン" /> </form> </body> </html> logintest.java import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class FormServletTest extends HttpServlet { public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html;charset=Windows-31J"); } String id = request.getParameter("userid"); String pass = request.getParameter("userpass"); if(id.equals("user") && pass.equals("password")){ out.println("ログイン成功"); } else { out.println("ログイン失敗"); } }

    • ベストアンサー
    • Java
  • PHPでエラーを元の画面にかえすには

    エラーメッセージを次の画面に行かずに 新規登録ボタンを押したら エラー表示を入力している画面に 表示するにはどうしたら出来ますか? javascriptは触れたことがないので使いたくないです ありましたら簡単なサンプルも教えて下さい 下記は入力フォームです <html> <head><title>新規登録</title></head> <body> <blockquote> <form action = "insert.php" method = "POST"> <br><br>登録画面<br><br> すべての項目入力してください<br> 番号<input type="number" name = "ID"> (一覧画面にない番号を入力してください) <br> <br>氏名<input type="text" size = "50" name = "NAME"><br><br> 住所<input type="text" size = "130" name = "ADDR"><br><br> <input type = "submit" value = "登録する" style ="font-size:20px; width: 100px; height: 40px"> <a href="http://localhost/top.php"> <input type = "button" value = "一覧に戻る" style ="font-size:20px; width: 100px; height: 40px"></A> </body> </blockquote> </form> </body> </html> 空白だったら入力フォームにエラー表示し再度ユーザに入力させたい

    • ベストアンサー
    • PHP

専門家に質問してみよう