KENT-WEB サポートコーナー 過去ログ [ 0068 ]


記事No: 2451
投稿日: 2007/12/26(Wed) 13:44:00
タイトルclipmailでの入力確認(アドレス)
ID情報: habomai
投稿者: habomai
URLhttp://www.shopforza.net/clipmail/clipmail.html

clipmailを使用する為に設定しているのですが
入力確認でうまくいかない部分があるので、ご教授いただければと思います。

やりたい事はメールの入力確認です。

代理店用のアドレスと、お客様用のアドレス、2か所入力するところがあり、それぞれでmatchによる確認を行いたいのですがうまくいきません。

http://www.kent-web.com/support/old/66/0416.html
↑上記過去ログを拝見し、cgiに修正を加えようとしたのですが
postmailでのご説明なので、clipmailだと同じ命令がありません。。。
(正確には、ある命令とない命令があります。)

clipmailでの設定方法を教えていただけないでしょうか。


もう一点、質問が2点になってしまうのですが、複数のアドレス入力がある事に付随していると思ったので、追記させていただきます。
新レスの方がいいと感じた場合、書き直させていただきます。

現在4か所アドレス入力欄があり、email〜email4とname設定しています。
emailとnameで指定するとアドレスの書式設定をしてくれるのですが、認識されるのはemailと設定している箇所のみです。

# E-mail書式チェック
if ($in{'email'} =~ /\,/) {
&error("メールアドレスにコンマ ( , ) が含まれています");
}
if ($in{'email'} && $in{'email'} !~ /^[\w\.\-]+\@[\w\.\-]+\.[a-zA-Z]{2,6}$/) {
&error("メールアドレスの書式が不正です");

上記部分を入力個数分、'email'の指定を変更してソースに修正を加えるしかないのでしょうか。

clipmailの使用バージョンは「Ver: 1.0」です。
よろしくお願いいたします。


記事No: 2462
投稿日: 2007/12/27(Thu) 00:49:35
タイトルRe: clipmailでの入力確認(アドレス)
ID情報: para
投稿者: Y50 庄助
URLhttp://www5e.biglobe.ne.jp/~begain/

> clipmailを使用する為に設定しているのですが
> 入力確認でうまくいかない部分があるので、ご教授いただければと思います。
>
> やりたい事はメールの入力確認です。
>
> 代理店用のアドレスと、お客様用のアドレス、2か所入力するところがあり、それぞれでmatchによる確認を行いたいのですがうまくいきません。
>
> http://www.kent-web.com/support/old/66/0416.html
> ↑上記過去ログを拝見し、cgiに修正を加えようとしたのですが
> postmailでのご説明なので、clipmailだと同じ命令がありません。。。
> (正確には、ある命令とない命令があります。)
>
> clipmailでの設定方法を教えていただけないでしょうか。
>
>
> もう一点、質問が2点になってしまうのですが、複数のアドレス入力がある事に付随していると思ったので、追記させていただきます。
> 新レスの方がいいと感じた場合、書き直させていただきます。
>
> 現在4か所アドレス入力欄があり、email〜email4とname設定しています。
> emailとnameで指定するとアドレスの書式設定をしてくれるのですが、認識されるのはemailと設定している箇所のみです。
>
> # E-mail書式チェック
> if ($in{'email'} =~ /\,/) {
> &error("メールアドレスにコンマ ( , ) が含まれています");
> }
> if ($in{'email'} && $in{'email'} !~ /^[\w\.\-]+\@[\w\.\-]+\.[a-zA-Z]{2,6}$/) {
> &error("メールアドレスの書式が不正です");
>
> 上記部分を入力個数分、'email'の指定を変更してソースに修正を加えるしかないのでしょうか。
>
> clipmailの使用バージョンは「Ver: 1.0」です。
> よろしくお願いいたします。
http://www.shopforza.net/clipmail/clipmail.html

clipmail.cgi 84行目から
# 入力内容マッチ
local($match1, $match2);
if ($in{'match'}) {
($match1, $match2) = split(/\s+/, $in{'match'}, 2);

if ($in{$match1} ne $in{$match2}) {
&error("$match1と$match2の再入力内容が異なります");
}
}


# 入力内容マッチ
local($match1, $match2);
if ($in{'match'}) {
($match1, $match2) = split(/\s+/, $in{'match'}, 2);

if ($in{$match1} ne $in{$match2}) {
&error("$match1と$match2の再入力内容が異なります");
}
}

local($match3, $match4);
if ($in{'2match'}) {
($match3, $match4) = split(/\s+/, $in{'2match'}, 2);

if ($in{$match3} ne $in{$match4}) {
&error("$match3と$match4の再入力内容が異なります");
}
}

さらにlibのpreview.pl 72行目
if ($key eq "need" || $key eq "match" || ($in{'match'} && $key eq $match2)) {

if ($key eq "need" || $key eq "match" || ($in{'match'} && $key eq $match2) || $key eq "2match" || ($in{'2match'} && $key eq $match4)) {

そしてlibのerrcheck.pl 30行目辺り
next if ($_ eq "match");
の下ぐらいに
next if ($in{'2match'} && $key eq $match4);
next if ($_ eq "2match");
next if ($key eq "2match");
を付け足して下さい。

そしてclipmail.htmlを
<input type="hidden" name="match" value="email email2" />
<input type="hidden" name="2match" value="email3 email4" />
として下さい。
2か所のmatchによる確認が出来ると思います。

またE-mail書式チェックですが、'email'を'email3'とし、2つのチェックでmatchを使えば、4つ調べたこととなると思います。


記事No: 2465
投稿日: 2007/12/27(Thu) 10:03:41
タイトルRe^2: clipmailでの入力確認(アドレス)
ID情報: habomai
投稿者: habomai
URLhttp://www.shopforza.net/clipmail/clipmail.html

> clipmail.cgi 84行目から
> # 入力内容マッチ
> local($match1, $match2);
> if ($in{'match'}) {
> ($match1, $match2) = split(/\s+/, $in{'match'}, 2);
>
> if ($in{$match1} ne $in{$match2}) {
> &error("$match1と$match2の再入力内容が異なります");
> }
> }
>
> を
> # 入力内容マッチ
> local($match1, $match2);
> if ($in{'match'}) {
> ($match1, $match2) = split(/\s+/, $in{'match'}, 2);
>
> if ($in{$match1} ne $in{$match2}) {
> &error("$match1と$match2の再入力内容が異なります");
> }
> }
>
> local($match3, $match4);
> if ($in{'2match'}) {
> ($match3, $match4) = split(/\s+/, $in{'2match'}, 2);
>
> if ($in{$match3} ne $in{$match4}) {
> &error("$match3と$match4の再入力内容が異なります");
> }
> }
>
> さらにlibのpreview.pl 72行目
> if ($key eq "need" || $key eq "match" || ($in{'match'} && $key eq $match2)) {
> を
> if ($key eq "need" || $key eq "match" || ($in{'match'} && $key eq $match2) || $key eq "2match" || ($in{'2match'} && $key eq $match4)) {
>
> そしてlibのerrcheck.pl 30行目辺り
> next if ($_ eq "match");
> の下ぐらいに
> next if ($in{'2match'} && $key eq $match4);
> next if ($_ eq "2match");
> next if ($key eq "2match");
> を付け足して下さい。
>
> そしてclipmail.htmlを
> <input type="hidden" name="match" value="email email2" />
> <input type="hidden" name="2match" value="email3 email4" />
> として下さい。
> 2か所のmatchによる確認が出来ると思います。
>
> またE-mail書式チェックですが、'email'を'email3'とし、2つのチェックでmatchを使えば、4つ調べたこととなると思います。

Y50 庄助様
返信ありがとうございます。
今日確認し、早速CGI等変更して実行してみました。
希望通りの操作を行ってくれるようになりました!
本当にありがとうございました!>< ペコリ。


[検索ページ]