CGI-BBS > 情報収集 > フォームメール > フォームの必須項目設定について教えて下さい。


カレッヂ
カレッヂ


質問者 mmm  投稿日 4/16(月) 18:26:54
フォームメールの必須項目の設定がなかなか出来ません。
会社名、部署名、業種、職種、従業員数、氏名、住所、電話番号、e-mailが必須で、
あとの項目は後付けのアンケートのようなもの(必須ではない)なのですが・・・。
以前同じような質問をされた方の書き込みを拝見させて頂き、実行してみましたがエラーになってしまいました。
よろしかったらどなたか教えて頂けますか???
回答者 LLO  [削除]  投稿日 4/18(水) 16:15:01
>以前同じような質問をされた方の書き込みを拝見させて頂き、実行してみましたがエラーになってしまいました。

何をやってどのようなエラーがでたのでしょうか?
質問者 mmm  [削除]  投稿日 4/19(木) 11:58:13
LLOさん、参考書に続き有難うございます!!!

>何をやってどのようなエラーがでたのでしょうか?

レスキューの過去のサポート掲示板(改造レベル)の459番目の書き込みを参考にさせて頂いたのですが、無理でした。
(webform.cgiを改造してしまったので駄目なのでしょうか???)
以下459番目の書き込みを引用させて頂きます。


「webform.cgi」のファイルを開くと
if ($name =~ /^email/i || $name =~ /^e\-mail/i) {

$value =~ s/ / /g;
if ($value =~ / / || $value =~ /;/) { $value = ""; }
if (!($value =~ /(.*)\@(.*)\.(.*)/)) { $value = ""; }

$email = $value;
}

っていうのがあるからそのすぐしたに

#************************************************************
if ($name =~ /^申込者氏名/ || $name =~ /^申\込者氏名/) {
$appname = $value;
}
if ($name =~ /^申込者住所/ || $name =~ /^申\込者住所/) {
$appaddress = $value;
}
#************************************************************

を付け足します。

次ぎに

if ($email eq '') { print "<font size=+2><b>メールアドレスを入力しないと送信できません</b></font><p>\n"; }
っていうのがあります。
この上に

#***************************************************************************************************************************
if ($appname eq '') { print "<font color=\"red\" size=+2><b>申\込者氏名を入力しないと送信できません</b></font><p>\n"; }
if ($appaddress eq '') { print "<font color=\"blue\" size=+2><b>申\込者住所を入力しないと送信できません</b></font><p>\n"; }
#***************************************************************************************************************************

以上です。
これの項目を変えてやってみましたが・・・「500 Server Error」と出てしまいました。
今のところ仕方が無いので解る迄はJavaScriptでエラーチェックしております。
もし宜しければ教えて下さい。
宜しくお願い致します!!!

又、ちょっと関係ないのですが・・・フォームに入力されたデータをcsvファイルにおとしているのですが、必須ではない項目に何も入力しないでいるとファイルのセルが左詰まりになってしまいます。(ファイルでは空欄なしになってしまいます・・・。)
これはどどの様に設定すれば、空欄にした項目がファイル上でも空欄になるのでしょうか???

何だか色々質問してしまって申訳ありません!!!
宜しければお願い致します。

回答者 LLO  [削除]  投稿日 4/19(木) 14:03:04
え〜っと・・・
その修正をしただけでは500サーバーエラーは出なかったのですが・・・

mmmさんが追加したCGIの中身を見せてもらえませんか?
質問者 mmm  [削除]  投稿日 4/20(金) 17:04:00
>LLOさん
レス下さったのに、こちらの返事が遅くて申訳ありません!!!
付け足したCGIを書き込んだら長すぎて遅れませんでした・・・。
とりあえず、確認画面は出さないようにしているのですが、次ページに会社名、部署名、氏名のみ反映させております。
本当はファイルを見て頂けたらとても早いのですが、長くなってしまうので却下です。
質問下手の初心者で本当にすみません!!!
的を得た質問がなかなか出来ません・・・。
でもご親切に有難うございました!!!
回答者 LLO  [削除]  投稿日 4/20(金) 17:07:34
そのCGIを.textにしてサーバにアップしてアドレスを書きこんでくれればいいのですが・・
質問者 mmm  [削除]  投稿日 4/20(金) 17:11:26
今使用しているのは会社の社内確認用サーバーなので、他の方が見れないようになっているのです・・・。
回答者 LLO  [削除]  投稿日 4/20(金) 17:31:37
ご使用のパソコンにPerlをインストールして
# perl -cw webform.cgi
のエラーチェックを行うか。
そのサーバのエラーログを見ると解決できるかもしれません。
質問者 mmm  [削除]  投稿日 4/20(金) 17:56:06
助言下さって有難うございます。
では今からやってみたいと思います。
どうも有難うございました!!!
又何かありましたら宜しくお願い致します。
(今、アクセス解析の設置方法で新たに難航中です・・・。)

返信(回答)する


Web裏技