ベストアンサー <html:form・・・>,<input type・・・>について 2010/01/23 12:25 <html:form・・・> <input type・・・> </html:form> 上記のようにしても正常に動くのでしょうか? みんなの回答 (3) 専門家の回答 質問者が選んだベストアンサー ベストアンサー askaaska ベストアンサー率35% (1455/4149) 2010/01/23 14:03 回答No.1 何を持って「正常に」と言うかね。 動くか動かないかの確認なら試してみるのが何よりも早いわ。 やってみれば? ところで質問はStrutsのことかしら? Strutsのことでの質問なら 動くわよ という回答になるけど。 Strutsが<html:~を推奨しているのは記述の統一ができるから というのが大きな理由 そして将来何か組み込むことができるから と言う理由もあるわ。 使ったほうがいろいろ助かるのは間違いないわよ。 むしろ使わないならその使わない理由を明確にしておいたほうがいいわ。 将来そのコードを見た人のためにね。 質問者 補足 2010/01/23 16:32 ご回答ありがとうございます。 <input type・・・>にした理由なのですが、はじめに <html:password redisplay="false"/>の中にvalue="<bean:write name="login" property= "member_password"/>"を入れようとしてエラーが解決できなかったからです。 今は以下のようにしていてもちゃんと表示されるのですが、新たな問題が浮上したため、ご質問させていただいた内容が関係しているのではないかと思い、投稿した次第です。 <html:form action="***" > <input type="password" size="50" value="<bean:write name="login" property= "member_password"/>" redisplay="false"/> ・・・ <html:submit value="更新する" /> </html:form> 私は今、上記のソースコードのJSPからActionForm,struts-config.xmlを使い、サーブレットで以下のソースコードのように,パスワードを暗号化しようとしているのですが、java.lang.nullpointerexceptionが出てきてしまいます。パスワードのオブジェクトがnullになっていると思うのですが・・・。スペルの間違いなどはないし、試しに <input type="text" property= "member_password"/>に変更してみたのですが, 結果は同じでした。かなり初心者の質問ですが、考えられる間違いがあればご教授お願いできませんでしょうか? public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws Exception { ActionForm dForm = (ActionForm)form; String encryptionPassword = encryptionPassword(dForm.getMember_password()); //別のサーブレットでDBへ格納するためのソースです Logic logic = new Logic(getDataSource(request)); logic.upMember(encryptionPassword); return mapping.findForward("success"); } private String encryptionPassword(String member_password) throws NoSuchAlgorithmException { MessageDigest md = MessageDigest.getInstance("MD5"); //以下のソースでjava.lang.nullpointerexceptionが出てきます。 byte[] enc = md.digest(member_password.getBytes()); return byteArraytoHexString(enc); } private static String byteArraytoHexString(byte[] md5) { StringBuffer md5String = new StringBuffer(); for (int i = 0; i < md5.length; i++) { int n = md5[i] & 0xff; if (n < 16){ md5String.append("0"); } md5String.append(Integer.toHexString(n).toUpperCase()); } return md5String.toString(); } 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 その他の回答 (2) ykkuy ベストアンサー率0% (0/2) 2010/01/24 17:27 回答No.3 No.2で回答したものです。 新たに出ているエラーが、どの部分で出ているのかがわからないのでなんとも言えませんが、 SQLにプレースホルダを使っていて、そのプレースホルダの数と、 SQL実行時にプレースホルダにバインドしている値の個数が違っていたりしませんか? 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 ykkuy ベストアンサー率0% (0/2) 2010/01/23 16:51 回答No.2 他の方への補足拝見しました。 inputタグで書くならname属性を指定しないといけないのでは? 質問者 補足 2010/01/24 11:49 ご回答ありがとうございます。 name="member_password" 上記のようにname属性を指定したのですが、「Parameter index out of bounds. 2 is not between valid values of 1 and 1」というエラーが出てきてしまいました。ネットで調べても、翻訳しても、答えが導き出せないで困っています。このエラーはどのようなことを訴えているのでしょうか? 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピュータープログラミング・開発Java 関連するQ&A <input type="file"/> に文字列をセットするために <form> <input type="file" id="x"/> </form> <input type="button" onclick="f()" value="push"/> <script> function f() { var e=document.getElementById("x"); e.value="x.txt"; } </script> としてもセットできません <form> <input type="text" id="x"/> </form> <input type="button" onclick="f()" value="push"/> <script> function f() { var e=document.getElementById("x"); e.value="x.txt"; } </script> であればセットできるのです どうしたらセットできるでしょうか? inputタグはformタグで必ず囲む必要がありますか? <input type="text">や< input type="button">などのinputタグは、入力欄に入力されたデータを他のファイルに送らずに同ファイル内で処理する場合も、必ず<form></form>で囲む必要があるのでしょうか? 例えば、<input type="text" id=”background_color”>に色(例:赤、青等)を入力し< input type="button" value=”変更” onClick=”change_background()”>ボタンを押すと、バックグラウンドの色が入力された色に変わるようなコードを書くとします。Javascript(change_background())の内容は同ファイルの<header></header>内に記述しますが、ここでは関係ないので割愛します。 この場合、 <body> <input type="text" id=”background_color”> < input type="button" value=”変更” onClick=”change_background()”> </body> で良いのでしょうか? それとも <body> <form> <input type="text" id=”background_color”> < input type="button" value=”変更” onClick=”change_background()”> </form> </body> とする必要が、ありますか? よろしくお願いします。 <INPUT type= indexのページを上1つ{top}下に左右2つ{side・main}と3つに分割しています。 そのtopの部分に <TD align="right"> <form method="POST" action="cart/shop.cgi"> <input type="hidden" name="mode" value="kakunin"> <input type="hidden" name="ret_id" value="./index.html"> <input type="image" src="cart.gif" alt="かごの中身を見る" border="0"> </TD> この様な形でボタン?を表示させ、それをmainで表示させたいのですが、どうすればいいのでしょうか? 今の状態では当然ですが{top}の部分にそのまま表示します。 あまり知識がなく、いろいろ調べてみたのですがわかりませんでした。よろしくお願いいたします。 ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム 5個のFormタグを1つのFormタグでまとめたい <form method="POST" action="jan_Edit.asp" id=form2 name=form2> <input type="hidden" name="a" Value =<% = YY1 %> > ~</form> <form method="POST" action="jan_Edit.asp"> <input type="submit" value="This Month"> </form> <form method="POST" action="jan_Edit.asp" id=form2 name=form2> <input type="hidden" name="a" Value =<% = YY2 %> >~</form> 現在、カレンダーを作成しています。上記(3つしか乗せてませんが同じ内容) 変数は YY1=1年前の月初 MM1=1か月前の月初 MM2=1ヶ月後の月初 YY2=1年後の月初で インプットタイプでサブミットを使用しています。端的にいうと、現在Formを5個使って月次、年次でカレンダーを作ってます しかし、Formがこれだけ並んでたら、かっこ悪いので1つのForm文でまとめれたらと 思ってますがなかなかグーグル先生でもみつかりません。 Formを一つにまとめれたらと思いますが、どなたか知恵をおかしください。 二つのform分について <form action="./test.cgi" method="POST"> <div>テスト:<input type="text" size="70" name="keyword" value=""></div> <input type="submit" value="OK"> </form> <FORM method="post" action="#"> 外側だけですが、遊んでくださいね16進数で!!!! <INPUT tabindex="10" accesskey="x" value="" name=BGC size=7> <INPUT tabindex="20" accesskey="x" onclick="document.bgColor='#' + document.forms[0].BGC.value" onkeypress="document.bgColor='#' + document.forms[0].BGC.value" type=button value="色変更"> </FORM> どちらも一つずつだと正常に動作します。 何か同じものが二つあるのでしょうか 何かが重複しているので 最初のformは動くけど、 2番目のformが動かないのでしょうね。 どうすれば二つとも動くでしょうか。 よろしくお願いいたします。 2個のFormを横並びにしたい HTML(5)で以下のソースに対して <form> <input type="text" id="1"> <input type="text" id="2"> </form> <form> <input type="text" id="3"> <input type="text" id="4"> </form> CSS form {display:inline} input {display:block} と書いた場合に、縦二列、横二列の表示が得られると期待したのですが 全て縦に並んでしまいました。 期待は左の列にid=1, 2が縦に並び、id=3, 4がその横に並ぶ感じです。 1 3 2 4 何か基本的な理解が抜けている気もしているのですがちょっとわからずお力を貸していただけないでしょうか。 なぜこうなってしまうのか仕組みも知りたいので理由を加えて教えていただけると助かります。 簡易的なサンプルコードを記載いたします。 <html> <head> <link rel="stylesheet" type="text/css" href="test.css"> </head> <body> <form> <input type="text" id="1"> <input type="text" id="2"> </form> <form> <input type="text" id="3"> <input type="text" id="4"> </form> </body> </html> css form{display:inline;} input{display:block;} 関係あるかわかりませんがchrome21とFirefox14を使っています。 よろしくお願いします。 <input type= <input type="button">はボタン、<input type="checkbox">はチェックボックスというように呼ばれていると思いますが、世間では<input type="file">タグのことをなんと呼んでいるのでしょうか?ドキュメントを書く際にいつも困惑しています。世間一般で通用する<input type="file">タグの名称がありましたら教えていただけますか? 一つのページで二つのFormを別々に使いたい <body> <form name="fm1"> <input type="hidden" value="1" id="page"> <input type="button" value="送信する" onClick="execute()"> </form> <form name="fm2"> <input type="hidden" value="2" id="page"> <input type="button" value="送信する" onClick="execute()"> </form> <div id="container">content</div> </body> </html> 上記のように同じ関数execute()を実行するのですが、受け渡す値がvalue="1" と value="2"と別々になっています。 素人考えではフォームfm1とfm2とは別々の値(1or2)を渡すと思ったのですが、どちらのボタンを押してもvalue="1"の結果となります。 二つのフォームを別々に動作させるにはどのようにすればよいでしょうか。 別formのhidden項目を自form値として送信したい 同ページ内に <form name="form1" action="aa"> <input type="text" value="123"> <!-- hidden項目は無い場合もある --> <input type="hidden" name="form1_1" value="xxx"> <input type="hidden" name="form1_2" value="yyy"> <input type="submit"> </form> <form name="form2" action="bb"> <input type="text" value="456"> <input type="hidden" name="form2_1" value="www"> <input type="hidden" name="form2_2" value="zzz"> <input type="submit"> </form> といった感じのformタグをおいています。 そこで、form2を送信する時に、form1のhiddenのみform2のformValueとして送信したいのですが、どんな風に飛ばしたらよいのでしょうか? というより、from2を飛ばすときに、他のformのhidden項目があったら自formの値として送信することってできるんでしょうか? javascriptでできるんでしょうか? 素人質問ですいませんが、何か足がかりになるようなものをご教授いただければと思います。 INPUT TYPE ・・・ タグの、<INPUT TYPE="TEXT"… と TYPE="INPUT"… の違いは何ですか? ここ1週間、ずっとサイトの検索をしたりしているのですが、答えが分かりませんでした… <FORM> </FORM> の中に さらに <FORM> </FORM>があるときのSUBMITボタンについて 今、 <FORM ACTION="aaa.asp" METHOD="POST" Name="form1"> <input type="SUBMIT" value="ボタン1"> <FORM ACTION="bbb.asp" METHOD="POST" Name="form2"> <input type="SUBMIT" value="ボタン2"> </FORM> </FORM> としていて、ボタン2を押すとbbb.aspに 飛んでほしいのでに、aaa.aspに飛んでしまいます。 こういう場合どのようにすればよいのでしょうか? それぞれのボタンは hidden の値をそれぞれの フォームの中の値を渡したいので どうしてもSubmitがいいのです。 FORMのINPUTタグについて FORMタグ内のINPUTタグで例えばボタンを作成した場合。 そのボタンを押すと他のURLへリンクするという動作は出来るのでしょうか? CGIを使わないで、HTMLのみで出来るのでしょうか。? よろしくお願いいたします。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム <form <input type="text"の枠を消せますか? 教えていただけますか? <input type="text" readonly/>を表示したときに表示される枠を 消すことができますか? 何故?と聞かれたら困りますが。。。 よろしくお願いします。 Form で、input type="button" を利用するとPOSTされない? 宜しくお願いします。 PHP5.0 MySql Smarty にて開発中です。 <form action="aaa.php" name="m_deleate" method="post"> 内に、 <input type="hidden" name="del" value="{{$member_id.v}}" /> <input type="button" onClick="●●●();" value="削除" /> として、javascript を呼び出して確認ダイアログを表示後、 aaa.php にPOSTさせると言うページを作成しました。 ボタンを押せば上手くPOSTされます。 しかしあるページだけPOSTが成功せず、ソースも同じなのに、 hiidenのvalueの値がPOSTされないケースがでてきました。 原因を絞り込む為に、かなり細切れにして探りましたが、 typeを、button にするのではなく、submit にすれば当然のごとく上手くいってしまいます。 しかし、type="submit"では、javascriptを絡めることができないので、 type="botton" にこだわっております。 といいますか、問題のページ以外は、この方法で上手くいっています。 aaa.php 内では、 //削除処理判定 if(isset($_POST["del"])){ として、お決まりのif判定を行っています。 どなたか、 <input type="button"・・・ を使用する際の注意点や問題点をお聞かせ下さいませ。 直感的なご回答でもかまいません。 かなりはまっております。何卒宜しくお願いいたします。 inputのtextとsubmitの高さがズレる <form> <input type="text"> <input type="submit"> </form> 上のHTMLで両方のinputの高さを同じに設定しても、高さが揃わないのですが、 何が原因でしょうか? formタグ HTMLで、formを使用し、CGIへテキストエリアのデータをpostしたいと 考えております。 テキストエリアを3つ、ボタンを1つ設けるならば 通常以下のようにすると思います。(必要部分の抜粋) <form action="foo1.cgi" method="post" ENCTYPE="multipart/form-data"> <input type="text" name="text1" value="text1" size=50 maxlength=100> <input type="text" name="text2" value="text2" size=50 maxlength=100> <input type="text" name="text3" value="text3" size=50 maxlength=100> <input type="submit" name="aaa" value="実行"> </form> こうすると、実行ボタンをクリックすると、text1、text2、text3のテキストエリアに 記述されているテキストが送信されますが、ここにボタンをもう一つ設け、 上記3つのデータを別のCGIに送信したいのですが、 この場合どのようにHTMLを記述したらよいでしょうか? 新たに下記のようにformタグを設けると、テキストエリアは6つになってしまいますし。。。 <form action="foo2.cgi" method="post" ENCTYPE="multipart/form-data"> <input type="text" name="text1" value="text1" size=50 maxlength=100> <input type="text" name="text2" value="text2" size=50 maxlength=100> <input type="text" name="text3" value="text3" size=50 maxlength=100> <input type="submit" name="aaa" value="実行2"> </form> どなたか分かる方情報頂けますか。 input[type=text]とinput[type="text"] input[type=text]とinput[type="text"] どちらが正しいですか? input type ボタン お世話になります。 inputtype ログインボタン・検索ボタンの事で、お尋ねいたします。 あちらこちらのサイトを参考にログインと検索ができるプログラムを 真似て作成いたしています。初めての事で内容も半分ぐらいしか理解出来ていないままのスタートです。 参考サイトのhtml部分・CSSソースを作りかけの自分のサイトに記載しますとログインボタンと検索ボタンのレイアウトが崩れて 表示されません。 何が原因なのか不明のままです!! お手数かけますが、ご指導お願い申しあげます。 下記に簡単にinputの部分だけソースを書きますので宜しくお願い いたします。 また別ページ(新規に)html<body>~<body>間に同じソースを 書きますと検索ボタンもログインボタンもきちっと表示されます。 中身のプログラムソースに入る前にレイアウトを先に手掛けたのですが 意気消沈しています。 他のCSSとかjavascriptかのソースと競合するのでしょうか? 解らない事ばかりです。 奇麗に表示ができれば幸いです。 宜しくお願い申し上げます。 googleサーチのinputです。 <div class="entry_search"> <form method="get" action="http://www.google.co.jp/search" target="_parent"> <table width="166" border="0" bgcolor="#ffffff"> <tbody> <tr> <td width="160" height="32" align="left" valign="top" nowrap="nowrap"><a href="http://www.google.co.jp" target="_blank"> <img src="imges/common/poweredby_google.gif" alt="Google" border="0" /></a> <br /> <input type="text"name="q" size="17" maxlength="255" value="" /> <input type=hidden name=ie value=Shift_JIS /> <input type=hidden name=oe value=Shift_JIS /> <input type="hidden" name="hl" value="ja" /> <input type="hidden" name="domains" value="#" /> <input type="submit" name="btnG" value="検索" /></td> </tr> <tr> <td nowrap="nowrap"><table> <tbody> <tr> <td ><input type="radio" name="sitesearch" value=" " /> <font color="#000000" size="-1">Web</font></td> <td><input type="radio" name="sitesearch" value="#" checked="checked" /> <font color="#000000" size="-2">サイト内</font></td> </tr> </tbody> </table> <input name="client" value="pub-5778690733142083" type="hidden" /> <input type=hidden name=ie value=Shift_JIS /> <input type=hidden name=oe value=Shift_JIS /> <input type=hidden name=hl value="ja" /> <input name="cof" value="GALT:GALT:#008000;GL:1;DIV:#336699;VLC:663399;AH:center;BGC:ffffff;LBGC:336699;ALC:0000FF;LC:0000FF;T:000000;GFNT:0000FF;GIMP:0000FF;FORID:1;" type="hidden" /> <input type="hidden" name="hl" value="ja" /></td> </tr> </tbody> </table> </form> こちらがログオンの一部です。 <div class="AA_approach_b"> <h4 class="AA_blockHead AA_loginHead">ログイン</h4> <form name="login" action="#" method="post"><input name="action" value="login" type="hidden"> <input name="#" value="4b96bbf140d2a3cb9821cc2cba76395e21feb0f5b9ab041b561f0a03fc15ef2a" type="hidden"><table class="bestfood_loginTable"> <tbody><tr> <th class="CC_th">E-mail</th> <td class="CC_td"><input name="loginEmailAddress" value="" type="text"></td> </tr> <tr> <th class="CC_th">password</th> <td class="CC_td"><input name="loginPassword" value="" type="password"></td> </tr> <tr> <td colspan="2" button type="class="CC_submit" value="submit"> <input value="ログイン" type="submit"> </button> </td> </tr> </tbody></table> <div class="AA_annotation"><a href="#">パスワードをお忘れの方</a></div> <input name="referer" value="block" type="hidden"> </form> 上記の他にCSSと手元にCGIソースがあります。 お手数ですが宜しくお願い申し上げます。 初めての事ですので表現や考えに間違いありますればご容赦を....!! formでテキストとファイルタイプの同時受け渡し 送信ボタンが押下されたとき、同じ遷移先の画面に「テキスト」「ファイル」タイプのデータを同時に受け渡せないことがわかりました。 (1) <form action="al.jsp" method="POST"> ⇒<input type="radio" name="1" value="2">の受け渡しが可能 (2) <form action="a.jsp" enctype="multipart/form-data" method="POST"> ⇒<input type="file" name="uploadfile" size="50">の受け渡しが可能 送信ボタン押下時に(1)テキスト(2)ファイルデータを同時に受け渡し、 a.jspからrequest.getParameter("1"); で値を取得する方法を教えて頂けないでしょうか。 現在は、 <form action ~> (1)input (2)input </form> の形式になっています。 formで複数のボタンを使いたい htmlの問題なので、カテゴリがhtmlかphpか迷いましたがphpで質問します。 htmlにおいて、form中にsubmitボタンを2個置きたいのです(例、修正ボタンと削除ボタン)。普通ならnameで区別しろということになり、飛び先(例えばaction=judge.php)中でnameで分岐させることになると思います。 ところが、現在phpフレームワークベースで開発しており、上記2つの処理を行うphpがすでにあるため、htmlからは、ボタンのactionによりそれぞれ別のphpを呼び出したいのです。以下に擬似コードを示しますが、以下のようにformが2つだと商品コード入力が2つになり、なんともおかしいので困っています。 form method=post action=edit.php input type=text 商品コード, input type=submit 修正 form method=post action=delete.php input type=text 商品コード, input type=submit 削除 質問のように1つのformに対して複数のsubmitを置くか、あるいは2つのformでも上記商品コードが1つであれば問題ないので、もしそのような方法があればご教示をよろしくお願いします。 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター プログラミング・開発 Microsoft ASPC・C++・C#CGIJavaJavaScriptPerlPHPVisual BasicHTMLXMLCSSFlashAJAXRubySwiftPythonパフォーマンス・チューニングオープンソース開発SEOスマートフォンアプリ開発その他(プログラミング・開発) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など
補足
ご回答ありがとうございます。 <input type・・・>にした理由なのですが、はじめに <html:password redisplay="false"/>の中にvalue="<bean:write name="login" property= "member_password"/>"を入れようとしてエラーが解決できなかったからです。 今は以下のようにしていてもちゃんと表示されるのですが、新たな問題が浮上したため、ご質問させていただいた内容が関係しているのではないかと思い、投稿した次第です。 <html:form action="***" > <input type="password" size="50" value="<bean:write name="login" property= "member_password"/>" redisplay="false"/> ・・・ <html:submit value="更新する" /> </html:form> 私は今、上記のソースコードのJSPからActionForm,struts-config.xmlを使い、サーブレットで以下のソースコードのように,パスワードを暗号化しようとしているのですが、java.lang.nullpointerexceptionが出てきてしまいます。パスワードのオブジェクトがnullになっていると思うのですが・・・。スペルの間違いなどはないし、試しに <input type="text" property= "member_password"/>に変更してみたのですが, 結果は同じでした。かなり初心者の質問ですが、考えられる間違いがあればご教授お願いできませんでしょうか? public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws Exception { ActionForm dForm = (ActionForm)form; String encryptionPassword = encryptionPassword(dForm.getMember_password()); //別のサーブレットでDBへ格納するためのソースです Logic logic = new Logic(getDataSource(request)); logic.upMember(encryptionPassword); return mapping.findForward("success"); } private String encryptionPassword(String member_password) throws NoSuchAlgorithmException { MessageDigest md = MessageDigest.getInstance("MD5"); //以下のソースでjava.lang.nullpointerexceptionが出てきます。 byte[] enc = md.digest(member_password.getBytes()); return byteArraytoHexString(enc); } private static String byteArraytoHexString(byte[] md5) { StringBuffer md5String = new StringBuffer(); for (int i = 0; i < md5.length; i++) { int n = md5[i] & 0xff; if (n < 16){ md5String.append("0"); } md5String.append(Integer.toHexString(n).toUpperCase()); } return md5String.toString(); }