- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:cgiの未入力チェック機能)
cgiの未入力チェック機能
このQ&Aのポイント
- CGIで作成されたメールフォームの未入力チェック機能において、氏名の未入力チェックが正しく機能していない問題が発生しています。
- メールフォームのHTMLコード中で氏名の入力欄を指定し、CGIスクリプトで氏名のパラメータを取得し、正規表現を用いて未入力チェックを行っています。
- しかし、氏名を入力しても未入力エラーが返ってしまう問題が発生しています。原因を特定し、修正方法を教えていただきたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
質問文のコードには間違いが見当たりません。 http://life-field.com/mailform/mail.htm は質問者様が実際に設置されているページでしょうか ? もしそうだとすれば、入力フォームも正しく記述されています。 今分かるのは、エラーチェックの時点で $name が空白文字0個以上の連続で構成されているということのみです。 mail.cgi のソース全文を (ウェブサイト上で) 公開するか、あるいは プログラム中で $name に関して処理をしている個所をすべて提示してください。 それから、「氏名を入れてください。ブラウザーの戻るボタンで戻って、必要な項目を入力して下さい。」といった内容のエラーを出力しているのは質問文の処理だけでしょうか。 補足をお願い致します。
お礼
親切に回答していただいて、申し訳ないのですが、 無事解決いたしました(^_^;) 原因は、質問文中には書いていなかったのですが、 途中、エンコードをした時に、$nameと、同じ名前でパラメーターを 受け渡していたため、 my $name = jcode::jis($name); 未入力チェックが出来なくなっていました。 my $name1 = jcode::jis($name); と、違う名前にすることで解決いたしました。 後で見直しても混乱しそうなプログラムにはなってしまいましたが。。。 ともあれ、お騒がせ致しましたm(__)m