• ベストアンサー

フォームの記述

使用環境 : IBM HPB V7 Windows XP Home Edition IE6 SOTEC WJ4160C4 自社HPのお問い合わせフォームに以下の3つのコマンドを入れようとしています。 <input type=hidden name="remote_host" value="Client's ISP"> <input type=hidden name="remote_addr" value="Client's IP address"> <input type=hidden name="remote_user" value="Client's User Name"> 実際に挿入し、自分で試しましたが他のデータは 上手く返って来ますが、上の3つは上手く作動しません。 HPB 7でHPを作成していますが、HPB 7を使って上記3つ のコマンドを挿入する方法は分かりませんので、HTML ソースに書き込んでいます。文法が間違っているのだと思います。 正しく作動する記述お教えお願いします。 又、CGIスクリプトの書き方、HTML、JavaScriptなど、 HP作成にお勧めの本がありましたら教えて下さい。

  • CGI
  • 回答数13
  • ありがとう数15

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

  • ベストアンサー
  • yomo3
  • ベストアンサー率32% (88/269)
回答No.10

ごめんなさい。降参です。 remote_hostなどは、3つとも「環境変数」といって、CookieファイルというHTML上からアクセスできる唯一のローカル資源を介して授受される、ローカルマシン(ホームページを見ているPC)に含まれるものです。 FORM内の記述は(おわかりとは思いますが)、CGIにデータを渡して所定の動作(ここではメールを送る)をさせるためのものです。 それで、問題の3行は、それぞれ「環境変数~~の中身をメールで送れ」という指示を与えるのが仕事なので、Value="~~"は不要なはずなのです。 ただ、CGIがその指示をどうやって受け取るのかは、CGIの仕様によるので、どこかに説明があるはずですが、私には見つけられませんでした。 そもそも、Hiddenで渡すのかどうかもよくわかりませんでした。 この辺りの問題だと思うのですが…… 申し訳ありません。

yoshikinz
質問者

お礼

yomo3さん、 本当に真剣に色々考えてくれて、 ありがとうございました。 私なりにもう少し、暗中模索で回答を探して、 何か分かったら報告します。

その他の回答 (12)

  • leaz024
  • ベストアンサー率75% (398/526)
回答No.13

これってコマンドが Env_report で、パラメータに Remote_host や Remote_addr を指定するんじゃないでしょうか? <input type="hidden" name="Env_report" value="Remote_host,Remote_addr"> まったく自信なしですが。。。

yoshikinz
質問者

お礼

leaz024さん、 返信ありがとうございました。早速やってみましたが、残念ながら又、不発に終わりました。 結果のコピーの一部です。 Below is the result of your feedback form. It was submitted by (goo@oshiete.co.jp) on Wednesday, July 2, 2003 at 17:23:22 --------------------------------------------------------------------------- Env_report: Remote_host,Remote_addr,Remote_user charge plan: Standard Plan ------以下省略--------

  • kenwood
  • ベストアンサー率27% (3/11)
回答No.12

この3行に置き換えてみたらどうなります? <input type=hidden name="Env_report" value="Env_report"> <input type=hidden name="Remote_host" value="Remote_host"> <input type=hidden name="Remote_addr" value="Remote_addr">

yoshikinz
質問者

お礼

kenwoodさん、返信ありがとうございました。 早速試してみましたが、残念ながらまた駄目でした。 以下が結果です: Below is the result of your feedback form. It was submitted by (xxx@hotmail.com) on Saturday, June 28, 2003 at 19:35:46 --------------------------------------------------------------------------- Env_report: Env_report Remote_host: Remote_host Remote_addr: Remote_addr charge plan: Standard Plan surname: Smith givenname: John address: Sesame Street ------- 以下省略 -------- 又、何か気づいた事がありましたら宜しくお願いします。

  • feininger
  • ベストアンサー率41% (74/180)
回答No.11

サイトを覗いたらPrint_configなるものがありましたよ。 こんなの↓をフォーム内に追加してみるとどうなります? <input type=hidden name="print_config" value="email,subject,remote_addr">

yoshikinz
質問者

お礼

feiningerさん、 返信ありがとうございました。 何か今度こそはいけそうと思い、期待してやりました。 しかし、残念ながら例の懸案の3つのコマンドに対する データは返されませんでした。 今夜は、ひとまず ここまでにしておきます。 又、何か ありましたら教えてくて下さい。 おやすみなさい

  • yomo3
  • ベストアンサー率32% (88/269)
回答No.9

あんまり英語得意じゃないし、翻訳エンジン積んでないのでわからないのだけれど、value="Client's ISP"とかなのはなぜでしょう。何処かに書いてあったんですか? 「value="Client's ISP"」をとってしまったらどうかな、と思ってやってみようとしたら、これってユーザー登録かなんか必要なのでしょう?はじかれてしまったのでできませんでした。 もし、value="Client's ISP"とか、値を指定されていないなら、取ってしまってからやってみてくれませんか?

yoshikinz
質問者

お礼

yomoさん、すみません、言葉不足でした。 全部と言うのは、例の懸案の3つのコマンド全部 という意味です。 その他の項目は全部正常に作動しています。 それは以前と同じです。

yoshikinz
質問者

補足

yomoさん、何度もすみません。 value値を全部削除してやりました。 やはり駄目でした。 全く、データが返されませんでした。

  • kosa
  • ベストアンサー率25% (379/1464)
回答No.8

ものすごく基本的なことですが <input type=hidden name="remote_host" value="Client's ISP"> <input type=hidden name="remote_addr" value="Client's IP address"> <input type=hidden name="remote_user" value="Client's User Name"> は<form>~</form>の中に記述されていますか?

yoshikinz
質問者

補足

kosaさん、何度も返信ありがとうございます。 前回あなたへの補足説明にありますように <form> ~ </form>内に記述しています。

  • feininger
  • ベストアンサー率41% (74/180)
回答No.7

3つともPerlで使われている環境変数ですね。(大文字小文字の違いはありますが) remote_host remote_addr remote_user ISPが指定してきたのではなく、 自分で命名したというのであれば変更してみてはどうでしょうか? あと、yamo3さんもご指摘されていますが、 「上手く作動しません」とはどんな感じになるのですか?

yoshikinz
質問者

補足

feiningerさん、返信ありがとうございます。 まず、懸案の3つのコマンドはISPが使用を認めています。そして、それぞれ以下のような機能を有しています。 remote_host:フォーム送信者のISPが分かります。 remote_addr:送信者のISPのIPアドレスが分かります。 remote_user:送信者のユーザー名が分かります(条件付ですが) そして、私が実際試した結果を貼り付けます。 勿論内容は全て、実在しません。 Below is the result of your feedback form. It was submitted by (goo@oshiete.co.jp) on Saturday, June 28, 2003 at 00:41:37 --------------------------------------------------------------------------- remote_host: ISP ← 上手く機能していません。 remote_addr: IPaddress ← 上手く機能していません。 remote_user: UserName ← 上手く機能していません。 charge plan: Standard Plan surname: Smith givenname: John address: Auckland phone: 09-123-4567 price: $500,000 location: Auckland type: House house area: 300m2 land: 700m2 storey: 2 bed rooms: 3 other rooms: 1 lounge features: flat chattels: stove garage: car port land details: freehold rates: $1,000

  • yomo3
  • ベストアンサー率32% (88/269)
回答No.6

ちよつとまつてください。 3行追加でどのような機能を期待していて、どのような結果になつているのですか? >私は、CGIスクリプトを全く書けません。 >その知識はゼロです。CGIはISPが提供しています。 ISPの制限とかないのですか?

yoshikinz
質問者

お礼

yomo3さん、返信ありがとうございます。 ISPの制限はあります。 但し、私は全てその制限内でフォームを作りました。 懸案の3つのコマンドもISPで使用可になってます。 因みにそのISPが当件に関して述べているHPの部分 はこのURLに出ています。 http://www.xtra.co.nz/products/0,,5901,00.html 次の補足説明で何を期待しているのか、 どのような結果になっているかを貼り付けます。

  • kosa
  • ベストアンサー率25% (379/1464)
回答No.5

う~ん あとはなんだろうなぁ~ name="remote_host" 変数名のアンダーバーが怪しい?とか?w 他のデータはいけてるんですよね? いけてる奴にもアンダーバー付いてる?

yoshikinz
質問者

補足

kosaさん、返信ありがとうございます。 ここにいけてる奴も含めたソースの概略貼り付けます。一部"xxx"になったり省略しても居ますが、 お分かりいただけると思います。 他にもアンダーバー付いているコマンドありますが、 機能しています。 <form name=form method=POST action="http://home.xtra.co.nz/cgi-bin/FormMail.pl"> <p> <input type=hidden name="recipient" value="xxx@xxx.co.nz"> <input type=hidden name="subject" value="Form Mailer"> <input type=hidden name="required" value="surname,givenname,address,phone,email,phone,price,location,type,house area,land,storey,bed rooms,other rooms,features,chattels,garage,land details,rates"> <input type="hidden" name="remote_host" value="ISP"> <input type=hidden name="remote_addr" value="IPaddress"> <input type=hidden name="remote_user" value="UserName"> <DIV align="center"> <table border=0> <tr> <th colspan=2><input type=radio name="charge plan" value="Standard Plan" Checked> Standard Plan ($168.<SUP>75</SUP>) <input type=radio name="charge plan" value="Photo Plan"> Photo Plan ($191.<SUP>25</SUP>) <br> </th> </tr> <tr> <th colspan=2><FONT size="+2">Your personal details</FONT><br> </th> </tr> <tr> <th align="left"><FONT color="#ff0000">*</FONT>Surname:</th> <td><input type=text name="surname" size=30></td> </tr> <tr> <th align="left"><FONT color="#ff0000">*</FONT>Given Name:</th> <td><input type=text name="givenname" size=30><br> </td> </tr> <tr> <th align="left"><FONT color="#ff0000">*</FONT>Address:</th> <td><input type=text name="address" size=30><br> </td> ---------- 中略 --------- </table> <hr size=1> <table border=0> <tr> <th valign=top align=left>Further comments <br> for appeal : <br> </th> <td><textarea name="special comments" COLS=80 ROWS=7></textarea></td> </tr> </table> <input type=hidden name="redirect" value="http://www.xxx.co.nz/thankyou-main.html"><input type=hidden name="missing_fields_redirect" value="http://www.xxx.co.nz/fillinagain.html"><BR> <FONT color="#ff0000" size="+0" face="Arial Baltic"><B>Please note that once you click the &quot;Send Message&quot; button, this will be regarded as an agreement to our &quot;Terms&nbsp;and&nbsp;conditions&quot;.</B></FONT><B><FONT color="#000000" size="+0" face="Arial Baltic"> We will email you to confirm once we receive your application.</FONT></B> <P align="center"><input type="submit" value="Send Message"> &nbsp;<input type="reset" value="Clear Form"></P> </DIV> </form>

  • kosa
  • ベストアンサー率25% (379/1464)
回答No.4

空白が原因ではないでしょうか? データが送信されてきてCGI側で解析するときに「value」の値に対して空白を削除する命令を実行していませんか? 空白を削除されて下記のようになってたりしません? 「Client's ISP」→「Client'sISP」 「Client's IP address」→「Client'sIPaddress」 「Client's User Name」→「Client'sUserName」

yoshikinz
質問者

お礼

kosaさん 再びの返信ありがとうございます。 空白はそのまま空白データとして返されて着てます 試しに空白とApostrophyどちらも削除して 試しましたが、やはり求める結果は得られませんでした。

  • Sawara13
  • ベストアンサー率27% (16/59)
回答No.3

「そんなこと知ってらあ!」と思われたらごめんなさいね。 えっと、先のお二方のまとめになりますが。 PerlのCGIですよね? 恐らく、 print "<input type=hidden name="remote_host" value="Client's ISP">"; こんな感じで書いてませんか? print "<input type='hidden' name='remote_host' value='ISP of Client'>"; 要するに、printの文字列を囲む""と、HTMLの属性を囲む""とがぶつかってないことを確認してみてください、と。 # 私もこのミス、よくやります。 # ですので、可能な限りヒアドキュメントを使ってHTMLコードを書きます、書けるところは。 value属性の値は、思い切って書き変えましょう。

yoshikinz
質問者

お礼

Sawara13さん、 返信ありがとうございます。 一つ誤解があったようです。 私は、CGIスクリプトを全く書けません。 その知識はゼロです。CGIはISPが提供しています。 それを使うようになっています。 ですから、あなたのおっしゃるような水準での 間違いではないと思います。もっと初歩的な問題だと思います。

関連するQ&A

  • メールフォーム

    【満足できる回答に300ポイント】メールフォームをホームページに設置しました。CGIはフューチャースピリッツhttp://www.future-s.com/でお借りしました。送信ボタンを押した後、自分が指定した特定のページを表示させたいのですが、借りているところのホームページに行ってしまいます。自分の指定したページを表示させるにはどんなHTMLにしたらいいのでしょうか? 現在は下記のようなHTMLを使っています。 <form action="http://form3.future-s.com/cgi/form3.cgi" method="post"> <input type="hidden" name="formid" value="IDナンバー"> <input type="hidden" name="formsubject" value="○○"> <input type="hidden" name="formlog" value="1"> 中略 </FONT><P><FONT size="-1"><INPUT TYPE="submit" VALUE="送  信"> <INPUT TYPE="reset" VALUE="リセット"> もしHTMLが問題でないなら、下記の条件を満たすフォームを教えてください。 ・CGIを借りても広告の入らないもの ・フォームは自分で作ったものが使えること ・送信後、自分が特定したページを表示させること ・無料であること どうぞよろしくお願いします。

  • フォームのレイアウト

    以下のようなフォームを作成しましたが、検索ボタンの下が妙に余っているのです。 これを上側と同じようにくっつけたいのですが、どうしたらよいでしょうか? よろしくお願いします。  <table border="1" width="200" border="0" cellspacing="0" cellpadding="2"> <tr><td> <div align="center" valign="middle"> <form method="get" action="url" target="_blank"> <input name="sitem" type="text" id="inputbox" size="20"><BR> <input name="Submit" type="submit" id="inputsubm" value="検索"> <input type="hidden" name="sv" value="6"> <input type="hidden" name="sid" value="12345"> <input type="hidden" name="su" value="bbb"> <input type="hidden" name="sn" value="aaa"> <input type="hidden" name="v" value="3"> </form></div> </td></tr></table>

    • ベストアンサー
    • HTML
  • フォームについて

    <form action="test.php" method="GET"> <input type="hidden" name="page" value="1"> <input type="submit" value="index"></form> <form action="test.php" method="GET"> <input type="hidden" name="page" value="1"> <input type="submit" value="index"></form> --------------------------------------------- このようにして書くと、どうしてもボタンが縦に並んでしまいます。どのようにすれば横一列に並べる事が出来るでしょうか?

    • ベストアンサー
    • HTML
  • ボタン別でフォームの送信先を変えたい

    同じ場所に3つある今のフォームを1つにまとめたいのですが、 「ラジオボタン」でやるのではなく「submitボタン」によって送信先の振り分けはできないのでしょうか? CGIなどを使って一旦クッションを置くのは問題ないです。何か参考になるサイトさんとかありましたら教えてください。 <form action="1.php" method="get" class="form" target="a" name="1"> <input type="hidden" name="s" value=90 /> <input type="hidden" name="t" value="e" /> <input type="text" name="moji" value="" size="8" /> <input type="submit" name="button" value="検索" /> </form> <form action="http://e.php" method="get" name="2" target="a"> <input type="hidden" name="test" value=et /> <input type="text" name="77" value="" size="8" /> <input type="submit" value="検索2" class="button" /> </form> <form action="http://8.cgi" method="get" target="a"> <input type="text" size="8" name="q" value="" /> <input type="submit" value="検索3" class="button" /> <input type="hidden" name="sut" value="JJ" /> </form>

    • ベストアンサー
    • CGI
  • なぜ?数日経つと使えなくなる検索フォーム

    ここに、http://opac.ndl.go.jp/index.html 「雑誌記事索引の検索/申込み」というのがありますが、そこにある 論題名、著者、雑誌名、検索ボタンの4つだけを切り出し、編集して 自作HTMLの検索フォームとして活用したいです。 (HDDに保管してIE6のスタートページにする) 自分なりに必要っぽいタグを切り貼りして使っていたのですが、数日経つと 「セッションの情報が存在しません。」などとエラーで使えなくなってしまいます。 例えば、下記もしばらくは使っていたのですが数日後に↑のエラーで使えなく なってしました。書かれた言語もよくわかりませんが、原因は何でしょうか? (↓EUCです) <form method="post" name="formlist" action="http://opac.ndl.go.jp/Process"> <input type="hidden" name="LS" value="6304253488"> <input type="text" name="TA_MTHEME" value=""> <input type="text" name="TA_MAUTHOR" value=""> <input type="text" name="TA_MTITLE" value=""> <input type="submit" name="MODE_10090002:S2" value="検索"> <select name="ACS"> <option value="SEARCH_CONDITION_AND" selected>AND</option> <option value="SEARCH_CONDITION_OR">OR</option> </select> <input type="hidden" name="SEARCH_WINDOW_INFO" value="06">

    • ベストアンサー
    • CGI
  • mail.cgiの記述について

    メールフォームの確認画面を表示すると、 件名、名前、お問い合わせ、メールは表示されるのですが、 生年月日、資料、担当者が、入力しても表示されません。 mail.cgiには printf "<li><b>生年月日</b>: %s </li>\n", $day; printf "<input type = \"hidden\" name = \"day\" value = \"%s\">\n", $day; printf "<li><b>資料</b>: %s </li>\n", $book; printf "<input type = \"hidden\" name = \"book\" value = \"%s\">\n", $book; printf "<li><b>担当者</b>: %s </li>\n", $name2; printf "<input type = \"hidden\" name = \"name2\" value = \"%s\">\n", $name2; とそれぞれ書いています。 例えば、担当者はtantousyaで、資料はsyryouとするべきでしょうか。 この3つ以外は表示されるので書き方が違うのかと思うのですが…

    • 締切済み
    • CGI
  • mixi(モバイル)のログインフォームについて 質問させていただきます

    mixi(モバイル)のログインフォームについて 質問させていただきます。 携帯(docomo)から、mixiのメールアドレスとパスワードの入力を省略したログインボタンを作成したいと思っています。 PC用のは容易に作れてログインも正常にできたのですが、モバイルの方がうまくいきません(下記)。 ---------------- <html> <body> <form action="http://m.mixi.jp/login.pl" method="post"> <input type="hidden" name="submit" value="main"> <input type="hidden" name="type" value="full"> <input type="hidden" name="mode" value="password"> <input type="hidden" name="key" value=""> <input type="hidden" name="next_url" value="home.pl"> <input type="hidden" name="email" value="mixiのメールアドレス"> <input type="hidden" name="password" value="パスワード"> <input type="submit" value="mixi Login"> </form> </body> </html> ---------------- 正常にできる方法をご存知の方いらっしゃいましたらご教示願います。 よろしくお願い致します。

  • フォームで同じ複数のnameで違うvalueの送信

    始めまして、現在一個のフォーム内で複数の同じnameで、違うvalueを送信しようと苦戦しております、、普通にタグを書くだけでは 一個のnameで違うvalueの送信は、最後のvalueしか送信できないです、 phpは使用できません。javaは、、殆ど素人なので、あまり分かりません、、formを一個一個区切るのも、レイアウト上できません、、 どうすればいいのでしょうか?・・・以下タグです。 昨日から、ここから先に進めません。。 先輩方助けてください、本当によろしくお願いします。 <form action="http://hoge.net/hoge/hogecheck.php" method="post"> <input type="hidden" name="site" value="hoge"> <input name="id" type="text" id="idform" maxlength="10" /> <input type="hidden" name="kin" value="3000"> <input type="image" src="buybtn.gif" /> <input type="hidden" name="kin" value="5000"> <input type="image" src="buybtn.gif" /> <input type="hidden" name="kin" value="10000"> <input type="image" src="buybtn.gif" /> <input type="hidden" name="kin" value="20000"> <input type="image" src="buybtn.gif" /> </form>

    • ベストアンサー
    • Java
  • フォームからsubmitをした後再読込させない

    ほぼ初心者でフォームからの申込みを作っています 現在 <form name="a11" action="/products/detail.php" method="post" > <input type="hidden" name="mode" value="cart" /> <input type="hidden" name="product_id" value="137" /> <input type="hidden" name="product_class_id" value="634" /> <input type="checkbox" name="quantity" value="1" /><br /> <input type="submit" value="受講する" onClick="alert('カゴに入れました');value='受講する'" /> </form> というフォームが数十個あるのですが、 一つチェックボックスにチェックを入れて送信するとページの再読み込みがされて チェックボックスのチェックが消えてしまいます どのチェックボックスにチェックを入れたかは残したまま、次のsubmitを押させたいのです 申込み者がどのフォームにチェックを入れて送信をしたかを見れるようにして 次のページに飛ばしたいのです どうかご教授願います HTMLの項目で質問させていただきましたが、JavaScriptのプログラム例など 併せてご教授いただけますと助かります どうぞよろしくお願いいたします

  • JSP→JSP フォームチェック

    困っているので助けてください。 まずプログラムの説明をさせてもらいます。 JSPからfromをつかってJSPにフォーム情報を送ります。 プログラムはこんな感じです。 <form action="abcdefg.jsp" method="post"> <input type="hidden" name="abc" value="abc"> <input type="hidden" name="def" value="def"> <input type="checkbox" name="aa" value="aa"> <input type="checkbox" name="bb" value="bb"> <input type="checkbox" name="cc" value="cc"> <input type="submit" value="次へ"> </form> これをabcdefg.jspで受け取る場合 String hidden_abc = request.getParameter("abc"); String hidden_def = request.getParameter("def"); とhiddenは必ず値が入っているのでこれで受け取れるのですが チェックボックスは選択しているかどうかわからないので上の記述では だめなようなのですがどのようなプログラムを書いたらいいのですか? 説明がうまく出来なく申し訳ないです。よろしければ教えてください。

    • ベストアンサー
    • Java