CGI-BBS > 情報収集 > フォームメール > 送信先アドレスをラジオボタンの項目によって変更したい。


カレッヂ
カレッヂ


質問者 けい  投稿日 2006/3/20(月) 22:03:20
はじめまして。けいといいます。
今回初めて自作のCGIとメールフォームを作成しています。
そこで送信先アドレスをラジオボタンによって変更したいのですが、
どうしても1番最初に書いたアドレスにしか送信できません。
自分が作成しているCGIを載せますので、
間違ってる点または足りない点がありましたら教えていただけませんでしょうか?
どうか、宜しくお願いいたします。


■HTML側

<input type="radio" name="for_select" value="A" checked>概要
<input type="radio" name="for_select" value="B">募集期間
<input type="radio" name="for_select" value="C">その他


■cgi側(滅茶苦茶な書き方ですみません。)

my($for_select);
if($FORM{'for_select'} = "A"){
$mailto = '○○○@mail.goo.ne.jp';
}elsif($FORM{'for_select'} = "B"){
$mailto = '×××@yahoo.ne.jp';
}elsif($FORM{'for_select'} = "C"){
$mailto = '△△△@docomo.ne.jp';
}else
{ &error("回答が正しくありません");}

※これを実行するとなぜかいつも○○○○○○@mail.goo.ne.jp
 に、全部のメールが届いてしまいます。

【習熟度】初めて

回答者 ひろ  [削除]  投稿日 2006/3/21(火) 14:04:13
my($for_select);
if($FORM{'for_select'} = "A"){
$mailto = '○○○@mail.goo.ne.jp';
}elsif($FORM{'for_select'} = "B"){
$mailto = '×××@yahoo.ne.jp';
}elsif($FORM{'for_select'} = "C"){
$mailto = '△△△@docomo.ne.jp';
}else
{ &error("回答が正しくありません");}

------------------------
文字列の等号は eq を使います。 
× if (A = B) {}
○ if (A eq B) {}
質問者 けい  [削除]  投稿日 2006/3/21(火) 21:10:46
返信ありがとうございます。
しかし、やってみたのですがサーバーにはりつけるとCGIの方が『500エラー』と表示されてしまいます。
自分でも出来るかぎり考えてみますが、またアドバイスをよろしくお願いします。
回答者 ひろ  [削除]  投稿日 2006/3/22(水) 18:24:27
500サーバエラーは、これだけでは正確な原因が分かりません。

よくありがちなのが、編集の際、全角スペースが変なところに入っていないか?
CGIのパーミッションは正しいか?などでそちらをチェックしてください。

どうしても分からない場合、
どこかのサーバにコードを公開してもらえるとアドバイスできるかも。

質問者 けい  [削除]  投稿日 2006/3/27(月) 16:42:48
ひろさん。
返信遅くなってすみません。
無事作成することができました。
原因は、全角によるものでした。
こんな単純なことに気付かず、すいません。
ありがとうございました。

このページは終了したので返信(回答)は書きこめません
 


Web裏技