- 締切済み
cgiのフォーム確認画面で教えてくださいー
cgiのフォームの確認画面でこまってます。 ラジオボタンの確認はいかで問題なくできています。 END for($xa = 1; $xa < @list_d; $xa++){print '<input name="kai" value="'.$xa.'" type="radio"'; if($form{'kai'} == $xa){print ' checked'; $ch++;} print '>'.$list_d[$xa].' ';} print<<END; ・・・同じ要領で、チェックボックスも表示させたいのですが いかですと、うまく表示できません。 END for($xa = 1; $xa < @list_e; $xa++){print '<input name="q2" value="'.$xa.'" type="checkbox"'; if($form{'q2'} == $xa){print ' checked'; $ch++;} print '>'.$list_e[$xa].' ';} print<<END; …チェックボックスの場合は何か違う指示が必要なのでしょうか。 どなたかお分かりの方教えていただけますか。 どうぞよろしくおねがいいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- kmee
- ベストアンサー率55% (1857/3366)
> うまく表示できません とは、何を期待していて、それと違ってどうなっていることを言っているのでしょう? 少なくとも、チェックボックスは表示されませんか? あとは、前後がどうなってる、とか、各変数に何がどんな風に入っているとか、そういうのが無いと正解には辿りつけません。 ○ for($xa = 1;~ と、1からになっているので、@list_eの先頭($list_e[0])が表示されないのかもしれない →これは、ラジオボタンの方でも同じ。 →@list_eの先頭にダミーが入っていて、[1]から使うようになっているなら関係無し ○if($form{'q2'} == $xa){ が正しくないのかもしれない →チェックボックスは複数選択できるので、受けとる側でも複数受け取るようになっているのが普通。 「$form{'q2'}の中に$xaがあるか」ということなら、==では判定できない。 →$form{'q2'}にどんな形式で入っているかわからないので、判定方法もわからない →そもそも$form{'q2'}が「name=q2のチェックボックスの状態」とは限らない
お礼
ありがとうございます。 はじめての投稿で、お返事いただけてとてもうれしいです。 ・・・わかりにくい内容ですみません。 ○if($form{'q2'} == $xa){ が正しくないのかもしれない こちらが怪しいので、さっそく確認してみます!!!