アプリ版:「スタンプのみでお礼する」機能のリリースについて

見当はずれの質問かもしれません。次のように、テーブルの中にフォームを入れてあります。その関係でしょうか、submit ボタンを押してもCGIプログラムにアクセスしません。私の方が何かを勘違いしているのかもしれませんが。。。。

<BODY bgcolor="#b08317">
<table border=4 width=680 align=left>
<tr bgcolor="#cccccc">
<form method="GET" action="do_select.cgi" name="resultform">
<th>
<textarea name="DATA" cols=52 rows=6> </textarea>
</th>
for ($i = 0; $i <= $#yakugo; $i++) {
$yakugotext=$yakugotext . $yakugo[$i] . '$';}
print <<EOD;
<textarea name="hiddenyakugo" cols=1 rows=1>"$yakugotext"</textarea>
<input type="submit" name="search" value="送信">
<INPUT type="submit" name="search" value="↑">
<INPUT type="submit" name="search" value="↓">
</form>
</tr>
</th>
</table></BODY>

もし、原因や改善のアドバイスをいただければ幸いです。

A 回答 (4件)

#2です。


追加確認:
form methodが「GET」になってますがなぜですか?
$#yakugoが幾つ位になるか分かりませんが、送信可能な最大文字数を超えませんか?

$yakugotextどのように使用されているのかまったく想像つきませんが、前半部が print文になっていないことといい、肝心なところを省略していませんか?
    • good
    • 0
この回答へのお礼

省略の仕方が不適切でした。申し訳ございません。以後気をつけます。
フォームのメソッドをPOSTにしたら一部問題が解決しました。この違いがあることを忘れていました。
どうもありがとうございました。

お礼日時:2003/11/03 13:44

>(3)CGIプログラムというのは、自らの中からさらに他のCGIプログラムにアクセスするような仕様が可能でしょうか?


可能と回答しましたが、「アクセス」とはどのような意味で使ってますか?
質問は、主語、述語を明確に、意味がわかるように詳しく書いてください。
    • good
    • 0
この回答へのお礼

フォームのaction に指定されているxxxx.CGIプログラムの中でさらにフォームを設置し、action=yyyy.cgi としてsubmit を実行することが可能かどうかをお尋ねしました。文章が不明確でした。申し訳ございません。以後正確な文章を書くように心がけます。済みませんでした。

お礼日時:2003/11/03 13:48

submitボタンの4つくらいたいしたことありません。

30個程度作ってますけど、ぜんぜん問題ありません。

>(1)フレームやテーブルによってフォームの送信が行われないことはあるのですか?
W3Cの勧告には違反しているかもしれませんが、現実問題としては <form>が <table>の中にあっても、問題なく動きます。

>(2)部品submit ボタンのname を書かないでいい時と書かなければいけないがあるのですか?
<form>~</form>内に1つのsubmitボタンであれば(<form>が複数あっても)必要ありませんが、2つ以上のsubmitボタンだとどのボタンが押されたか評価しないといけないので(valueの)値を受取るために名前が必要では?

>(3)CGIプログラムというのは、自らの中からさらに他のCGIプログラムにアクセスするような仕様が可能でしょうか?
可能です。CGIプログラムに限らず、HTMLでさえ<META>タグの「refresh」で他のプログラム、HTMLへジャンプすることが出来ます。

ところで、質問とは無関係な内容もありますが気づいた点です。

1.「for」から上が print文になってませんが、いいんでしょうか?
ちゃんと出力されているか出力結果を「表示」→「ソース」で確認してください。

2.省略しただけかもしれませんがヒアドキュメントの終わりの「EOD」がありません。

3.二つ目の<textarea>の cols, rowsが「1」というのはどういうことでしょう?

4.同じく$yakugotextの「"」は不要。
    • good
    • 0

hiddenyakugoのテキストエリアが、セルに入っていないようですが?


あと、
閉じもおかしくないですか?
</tr>は良いとして、その後に</th>があるのは変ですよ。

あと3つあるsubmitボタンは何か意味があるのでしょうか?
    • good
    • 0
この回答へのお礼

おっしゃるとおり、submit ボタンが4つもある仕様なんです。一つのフォームの部品としては、このほかに、オプションメニューが一個、またinput が2つあるなど、かなり負担の大きなフォームになっています。で、action に指定したCGIプログラムにアクセスできているのは一つだけで、他の三つのボタンは死んでいます。また、フォームの部品に入った値も一部の部品の値しか読めていません。
 言葉ではお伝えしにくくて残念です。フォームというのはどういう制限があるのでしょうか?
 (1)フレームやテーブルによってフォームの送信が行われないことはあるのですか?
(2)部品submit ボタンのname を書かないでいい時と書かなければいけないがあるのですか?
(3)CGIプログラムというのは、自らの中からさらに他のCGIプログラムにアクセスするような仕様が可能でしょうか?

お礼日時:2003/11/02 22:32

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