CGIからサイズ指定のwindowopenを使いたいのですが・・

このQ&Aのポイント
  • CGIに記述されているリンクを別ウィンドウでサイズ指定して開く方法を教えてください。
  • CGIで変数が出力されずに表示されない問題について、javascriptを使用する必要があるかどうかについて教えてください。
  • javascriptの<head></head>内の記述をCGIのどの部分に配置すれば良いかについて教えてください。
回答を見る
  • ベストアンサー

CGIからサイズ指定のwindowopenを使いたいのですが・・

こんにちは、CGIに記述されてますリンクを別ウィンドでサイズ指定して開こうとしているのですが、普通にWindowopen()で指示すると指定サイズで画面は開くのですがCGIでの変数$aなどの部分が出てないので全てを出力する方法を教えて下さい。 以下のスクリプトです。 print <<"EOF"; <table border=0"> <form action="~.cgi" method="post" target="_blank"> <tr><td> <input type="hidden" name="code" value="$a"> <input type="hidden" name="shohin" value="$b"> <input type="image" src="~.gif" name="submit" align="absmiddle"> </td></form> 上記の式のFORMタグ内を <form action="~.cgi" method="post" onclick="window.open(this.action,6,'width=$width,height=$height');return false"> に変更して指定サイズで表示するとHTML部分は表示されますが、$a、$bが表示されません。 javascriptを使用しないとできないのでしょうか? もし、そうならjavascriptの<head></head>ないの記述はCGIではどの部分に入れればよいのでしょうか? お手数ですがご回答よろしくお願いします。

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

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

  • ベストアンサー
回答No.1

JavaScriptを使ってGETで送信する方法を思いつきました。 <script type="text/javascript"> <!-- function submitwin(){ newWin=window.open('', '', 'width=600,height=400'); str="****.cgi?code=" + document.myform.code.value + "&shohin=" + document.myform.shohin.value; newWin.location = str; } //--> </script> <form name="myform"> <input type="hidden" name="code" value="$a"> <input type="hidden" name="shohin" value="$b"> <input type="image" src="~.gif" onClick="submitwin(); return false;" align="absmiddle"> </form> これではダメでしょうか? JavaScriptは<head></head>だけでなくどこに置いても大丈夫ですよ。

hitotin
質問者

お礼

ありがとうございます、今メール読ませて頂いて試したところ完璧にできました! (昨日、一日悩んだ事が・・・こんな簡単に解決するなんて;;)すいません独り言です。 本当に感謝します。ありがとうございました!

関連するQ&A

  • 送信先CGIの選択

    <form method="post" action="file.cgi"> <input type="hidden" name="password" value="xxx"> <input type="hidden" name="action" value="zzz"> <input type="text" name="name" size="50" value=""> </form> この場合、送信先CGIがfile.cgiに固定されていますが、action="送信先"をリストボックス等を使って複数選択できるようにしたいと考えています。可能でしょうか?

    • ベストアンサー
    • Perl
  • セレクトボックスで指定した任意のCGIにPOSTしたい

    フォームでリクエストを送信する際、セレクトボックスで指定した任意のCGIにPOSTしたいのです JavaScriptで実現したいのですが...教えてくださいm(__)m 下記はフォームの中身です。 <form action="" method="post"> <input type="text" name="key_word"> <select name="S1"> <option selected value="error">CATEGORY <option value="search_1.cgi">SELECT_1 <option value="search_2.cgi">SELECT_2</option> </select> <input type="hidden" value="kw_search" name="mode"> <input type="submit" value="検索"></td> </form>

  • javascriptでCGIを実行するには

    htmlタグ <form method="post" action="・・・/cgi-bin/gogo.cgi"> <input type="text" name="name" size="20" value=""> <input type="submit" value="送信"> 上記で送信ボタンを押すとcgi側でnameを受け取れますが、 以下の場合はcgiは動作するのですが、nameを受け取れません、 受け取れる方法を教えてください。 <script type="text/javascript" language="javascript"> <!-- function gogo(){ document.write('<img src="・・・/cgi-bin/gogo.cgi">'); } // --> </script> </head> <body> <form method="post" action="javascript:gogo()"> <input type="text" name="name" size="20" value=""> <input type="submit" value="送信"> </form>

  • CGIの組み方が解りません

    会社のHP制作しているのですが、 見積もりフォーム作ろうと思っています。 <FORM action=http://●●●.jp/●●●cgi method=POST >←良く解りません <INPUT type="hidden" name="mailto" value="●●●@●●●.jp"> <INPUT type="hidden" name="subject" value="見積もり依頼"> <INPUT type="hidden" name="location" value="formend.html"> どこかのサイトを拝見してこのような感じで行ったのですが、 最初のform actionが良く解りません。 そもそもCGIをどのようにつくり設置するのか根本的なことが良く解りません。 何処か解り易く説明しているcgiの組み方、メールフォームの作り方などがあれば教えてください。

  • リンク先のcgiが開かない

    お世話になります。 既存のcgiを改造しているのですが、リンク先のcgiが開かず、何のエラーもなく、元のページが再表示されてしまっています。何が原因なのでしょうか? ソース自体は改造前と見比べてみても(パラメータを追加した以外)なんら変わりはありません。 <FORM METHOD=POST ACTION="t02.cgi"> <INPUT TYPE=HIDDEN NAME=A VALUE="123"> <INPUT TYPE=HIDDEN NAME=MODE VALUE="111"> <INPUT TYPE=HIDDEN NAME=BU VALUE="DD"> <TD COLSPAN=6>&nbsp;&nbsp;<INPUT TYPE=SUBMIT VALUE="ダウンロード"></TD> </FORM> 上記のようなテキストをperlで組み立ててスキンにはめ込んで作っています。 よろしくお願いします。

    • 締切済み
    • CGI
  • cgiにSSLをつけたい

    ショッピングバスケットのCGIを使っております。 そこで買い物カゴの中身(cargo.cgi)をSSLに対応したいのです。 色々試してみたのですが、 <a href="https://sslhost.xxx.com/~iroiro8/test.html">SSLのページへ</a> このリンクからだとちゃんと次のtest.htmlでは画面右下に鍵のマークがついていました。 そして、 <a href="https://sslhost.xxx.com/~iroiro8/cargo/cargo.cgi">SSLのページへ</a> このリンクからでもちゃんと次のcargo.cgiでは画面右下に鍵のマークがついていました。 でも、次のような商品選択からformを使ってオーダーするようなリンクからだと <form method=post action="https://sslhost.xxx.com/~iroiro8/cargo/cargo.cgi"> <input type=hidden name="action" value="regist"> <input type=hidden name="goods" value="りんご"> <input type=hidden name="unit" value="600"> <table width="100%"> <tr> <td width="42%"><font>S : 600円</font></td> <td width="16%"> <div><font>個数</font></div> </td> <td width="20%"> <select name="amount"> <option value="1">1</option> <option value="2">2</option> </select> </td> <td width="23%"> <input type=image src="../image/order.gif"> </td> </tr> </table> </form> 次のページのcargo.cgiでは画面右下に鍵のマークではなく、ストップマークみたいなアイコンになり、 その上、オーダーしたはずの商品がカゴの中に入っていないのです。 私は何か根本的なことを見逃しているのでしょうか。

    • ベストアンサー
    • CGI
  • 検索結果をサイズ指定した新規ウインドウで表示する

    はじめまして。ATRYといいます。よろしくお願いします。 [search.html]でキーワードをformで入力してもらい、[result.php]で検索、結果を表示させています。 現在は、 --------------[search.html]--------------- (略) <FORM action="result.php" method="post" target="_blank"> キーワード: <INPUT type="text" name="keyword"> <INPUT type="submit" value="GO"> </FORM> (略) ------------------------------------------ のように、ターゲット指定で新規ウインドウを立てていますが、今度はサイズ指定をしたウインドウを立てたいと思います。 JavaScriptでwindow.open()を使うことはわかるのですが、いい方法が浮かびません。たとえば、 --------------[example.html]---------------- (略) <FORM> キーワード: <INPUT type="text" name="keyword"> <INPUT type="button" value="GO" onClick="javascript:window.open('result.php','','width=300,height=500')"> </FORM> (略) -------------------------------------------- としても新規ウインドウは開かず、思う結果にはなりません。何か大きなところを見逃してるような気がするのですが、解決できないでいるので、アドバイスをよろしくお願いいたします。

    • 締切済み
    • PHP
  • IEでFORMタグを入れると空白ができる

    IEだけなのですがFORMタグを入れるとTABLEとTABLEの間に空白ができます。 自分なりに切り分けをしたみたところ下記のような結果になりました。 1、XHTML1.0をHTML4.0に変更すると正常に表示 2、Firefoxで開くと正常に表示 3、FORMタグを外すと正常に表示 4、このhtmlファイルをローカル(自身のPC上)で表示すると正常に表示 (Webサーバにアップロードすると現象が現れる) ソースは以下の通りです <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <table border="0" width="800"><tr> <td><font color="#000080"><b>サブメニュー</b></font></td> <td width="20"></td> <td align="right"> <input type="button" value="戻る" onclick=window.open("http://www.xxxx.xxx/xxx.html","_top")> </td></tr></table> ※この間に空白ができます※ <table border="1" cellspacing="0" cellpadding="5" width="800"> <tr><th nowrap class="l" width="270">商品A</th> <th nowrap class="l" width="100">商品A</th> <th nowrap class="l" width="270">商品名B</th> <th nowrap class="l" width="100">商品B</th> <p></tr> <tr> <form action="./xxx.cgi" method="post" style="margin:0px"> <input type="hidden" name="view" value="0"> <input type="hidden" name="pick" value="0"> <input type="hidden" name="back" value=""> <td valign="top" width="270">あ</td> <td nowrap align="center" valign="top" width="100">あ</td></form> <form action="./xxx.cgi" method="post" style="margin:0px"> <input type="hidden" name="view" value="0"> <input type="hidden" name="pick" value="0"> <input type="hidden" name="back" value=""> <td valign="top" width="270">あ</td> <td nowrap align="center" valign="top" width="100">あ</td></form> </tr> <tr> <form action="./xxx.cgi" method="post" style="margin:0px"> <input type="hidden" name="view" value="0"> <input type="hidden" name="pick" value="0"> <input type="hidden" name="back" value=""> <td valign="top" width="270">あ</td> <td nowrap align="center" valign="top" width="100">あ</td></form> <form action="./xxx.cgi" method="post" style="margin:0px"> <input type="hidden" name="view" value="0"> <input type="hidden" name="pick" value="0"> <input type="hidden" name="back" value=""> <td valign="top" width="270">あ</td> <td nowrap align="center" valign="top" width="100">あ</td></form> </tr> </table> </p> </html> 実際にはもっと長い表になるのですが<tr></tr>を増やせば増やすほど空白が大きくなります。 どうすれば解消できるでしょうか ご存知の方がいらっしゃいましたらご教授願います。 いろいろなサイトを拝見して試してみましたが解決できないのでよろしくお願いします。

    • ベストアンサー
    • HTML
  • sessionの使い方について

    フレームhtmlで下記のPHPを読み込みします。 --menu.php-- <td height="73"> <form method="POST" action="main.php" target="sita"> <input type="image" src="img/jyusyo.gif" width="150" height="50"> <input type="hidden" name="step" value="1"> </form></td> <td height="73"> <form method="POST" action="main.php" target="sita"> <input type="image" src="img/kouza.gif" width="150" height="50"> <input type="hidden" name="step" value="2"> </form></td> ここまで--- --main.php <form method="POST" action="kakunin.php" target="sita"> <?php if(( $_POST["step"] == 1 ) or ( $_POST["step"] == "" )){ ?> 名前 <input type="text" name="name" size="43" value="<?php echo $name ;?>"> 住所 <input type="text" name="adress" size="43" value="<?php echo $adress ;?>"> <?php } ?> <?php if( $_POST["step"] == 2 ){ ?> <title>名前</title> 借入 <input type="text" name="kari" size="43" value="<?php echo $kari ;?>"> 返金 <input type="text" name="henkin" size="43" value="<?php echo $kenkin ;?>">   <?php } ?> <input type="submit" value="送信" name="B1"><input type="reset" value="リセット" name="B2"> </form> ここまで--- <input type="submit" value="送信" name="B1">でアクションを起こさない前でも sessionで値を保持する方法ありますか? 名前、住所などを入力し送信ボタンを押さないで、借入、返金等を入力すると 名前、住所、などは消えてしまいます。 何かいい方法ないでしょうか?

    • ベストアンサー
    • PHP
  • プルダウンで選択したCGIを動かしたい(ACTION=""をプルダウンで変更するには?)

    プルダウンで選択したCGIを動かしたい(ACTION=""をプルダウンで変更するには?) 以下の <option value="test1.cgi">テスト1  <option value="test2.cgi">テスト2 <option value="test3.cgi">テスト3 <option value="test4.cgi">テスト4 4つのプルダウンメニューを選択して、それぞれ別のCGIを動かすには どうしたらできますか? よかったら教えて下さい。javascriptで出来そうな気がするのですが… <FORM name="testname" method="post" ACTION="/cgi-bin/??????" > <TABLE> <TR><TD> テスト</TD> <TD bgcolor="#FFFFFF"> <SELECT name=""> <option value=""> <option value="test1.cgi">テスト1  <option value="test2.cgi">テスト2 <option value="test3.cgi">テスト3 <option value="test4.cgi">テスト4 </SELECT></TD> </TR> <TR> <TD bgcolor="#cccccc" width="150"> 開始日</TD> <TD bgcolor="#FFFFFF"> <input name="daysS" type="text" size="8"> </TD> </TR> <TR> <TD bgcolor="#cccccc" width="150"> 終了日</TD> <TD bgcolor="#FFFFFF"> <input name="daysE" type="text" size="8"> </TD> </TR> </TABLE> <BR> <INPUT type="submit"name="send"value="開始"> <INPUT type="reset" name="reset" valiu="消去"> </FORM>

専門家に質問してみよう