CGI-BBS > 情報収集 > フォームメール > メールアドレスが正しくない場合、エラーを出す方法。


カレッヂ
カレッヂ


質問者 m2  投稿日 7/3(火) 11:37:16
氏名、メールアドレス、再度メールアドレスという3項目を入力というフォームメールを作っております。
mailとmail2が同一ではない場合にエラーを出したいのですが、どうしたら良いのか思い付きません。。。
どなたか教えて下さる方がいらっしゃったら、申訳ありませんが、宜しくお願い致します。
回答者 LAM  [削除]  投稿日 7/3(火) 16:02:07
フォームデータチェックの部分に

if ($FORM{'mail'} ne $FORM{'mail2'}) { &error("メールアドレスが一致しません"); }

ってのはどうでしょう??
質問者 m2  [削除]  投稿日 7/3(火) 16:48:58
>LAMさん
お返事有難うございます!!!早速試してみました。
のですが・・・エラーが出ずに「送信完了!」になってしまいました。。。

mail及びmail2はform.htmlにてNAMEの箇所に書いています。
今の所、webform.cgiにLAMさんが教えて下さった1行を書き足した感じです。

・・・どうしたらエラーチェックできるのでしょう・・・
回答者 LAM  [削除]  投稿日 7/3(火) 17:14:08
if ($mail ne $mail2) { &error("メールアドレスが一致しません"); }

↑ならどうでしょう??

質問者 m2  [削除]  投稿日 7/3(火) 17:23:01
>LAMさん
度々すみません!!!お世話になります。
試してみたのですが、まだエラーがひっかかりません。
本当にお手数お掛けして申訳ないです。。。

わたしもまだねばってみます!!!
回答者 LAM  [削除]  投稿日 7/3(火) 17:34:44
if ($mail ne '$mail2') { &error("メールアドレスが一致しません"); }

これだったらたぶん大丈夫かな・・・
質問者 m2  [削除]  投稿日 7/3(火) 17:47:37
>LAMさん
早急にお返事頂けて有り難い限りです。
有難うございます!!!
今試してみましたら、送信完了ページは出ないのですが、Internal Server Errorが出てしまいました。。。
なので、理由解明に励みたいと思います!!!

回答者 KEN  [削除]  投稿日 12/30(月) 19:49:39
m2さんと同じ事に悩んでいます。
LAMさんからの方法は僕も試しましたが、m2さんと同じです。
m2さんはその後、動きましたか?
教えてください。
回答者 LAM  [削除]  投稿日 1/6(月) 14:56:19
どうもこんにちは。。

HTMLフォームの部分は
メール1は「mail1」
メール2は「mail2」
ということを前提に書きます。。

webform.cgiの82行目あたり
elsif($name eq "password"){ ・・・・
と
else{
の間に

elsif($name eq "mail1"){ $mail1 = $value; }
elsif($name eq "mail2"){ $mail2 = $value; }

と追加して、
108行目あたり
if ($mailto eq '' || ・・・・
の下あたりに

if($mail1 ne $mail2){ &error("メールアドレスが一致しません"); }

と追加してみたらどうでしょう?

動作確認はしてませんのでよろしく。。

返信(回答)する


Web裏技