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


記事No: 70
投稿日: 2007/04/03(Tue) 14:50:01
タイトルpostmailにおける半角カタカナのエラーチェックについて
ID情報: deconeco
投稿者: でこねこ
URLhttp://x03.2000710.net/test/sr-sep/contact/inquiry.html

はじめまして。postmailを使わせていただいています。
今回お伺いしたいのは半角カタカナのエラーチェック時におきる問題についてです。
どうしても半角カナエラーチェックが必要になり、cgiにおいて以下のように指定いたしました。

# 禁止ワード
# → 投稿時禁止するワードをコンマで区切る
$no_wd = 'ア,イ,ウ,エ,オ,カ,キ,ク,ケ,コ,サ,シ,ス,セ,ソ,タ,チ,ツ,テ,ト,ナ,ニ,ヌ,ネ,ノ,ハ,ヒ,フ,ヘ,ホ,マ,ミ,ム,メ,モ,ヤ,ユ,ヨ,ワ,ヲ,ン';

ちなみにテンプレートは


# 確認画面テンプレート【サーバパス】
$tmp_conf = './tmpl/conf.html';

# 一般エラー画面テンプレート【サーバパス】
$tmp_err1 = './tmpl/err1.html';(←半角カナエラーチェック用)

# 入力エラー画面テンプレート【サーバパス】
$tmp_err2 = './tmpl/err2.html';(←必須項目未入力エラー用)

# 送信後画面テンプレート【サーバパス】
$tmp_thx = './tmpl/thx.html';

# 送信「本文」テンプレート【サーバパス】
$tmp_body = './tmpl/body.txt';

としています。
そこで以下のような問題がおこりました。

1.
------------------
半角カナで入力⇒「送信内容を確認」⇒
半角カナのエラーを出した後に「前画面に戻る」⇒
半角カナを直す⇒必須入力項目未入力⇒「送信内容を確認」
とすると、エラー表示が半角カナエラー画面になってしまう

2.
------------------
必須項目を入力し、半角カナを記入していない状態にも関わらず、半角カナエラー画面が表示される

ちなみに、半角カナを設定する以前はerr1.htmlは利用しておらず、動作そのものは問題ありませんでした。

公開前のサイトのため、あまり情報をお出しできず申し訳ありませんが、何卒お力いただきたくよろしくお願いいたします。


記事No: 72
投稿日: 2007/04/03(Tue) 15:40:25
タイトルRe: postmailにおける半角カタカナのエラーチェックについて
ID情報: tems
投稿者: BAL
URLhttp://f43.aaa.livedoor.jp/~sumure/

> はじめまして。postmailを使わせていただいています。
> 今回お伺いしたいのは半角カタカナのエラーチェック時におきる問題についてです。
> どうしても半角カナエラーチェックが必要になり、cgiにおいて以下のように指定いたしました。
>
> # 禁止ワード
> # → 投稿時禁止するワードをコンマで区切る
> $no_wd = 'ア,イ,ウ,エ,オ,カ,キ,ク,ケ,コ,サ,シ,ス,セ,ソ,タ,チ,ツ,テ,ト,ナ,ニ,ヌ,ネ,ノ,ハ,ヒ,フ,ヘ,ホ,マ,ミ,ム,メ,モ,ヤ,ユ,ヨ,ワ,ヲ,ン';
>
> ちなみにテンプレートは
>
>
> # 確認画面テンプレート【サーバパス】
> $tmp_conf = './tmpl/conf.html';
>
> # 一般エラー画面テンプレート【サーバパス】
> $tmp_err1 = './tmpl/err1.html';(←半角カナエラーチェック用)
>
> # 入力エラー画面テンプレート【サーバパス】
> $tmp_err2 = './tmpl/err2.html';(←必須項目未入力エラー用)
>
> # 送信後画面テンプレート【サーバパス】
> $tmp_thx = './tmpl/thx.html';
>
> # 送信「本文」テンプレート【サーバパス】
> $tmp_body = './tmpl/body.txt';
>
> としています。
> そこで以下のような問題がおこりました。
>
> 1.
> ------------------
> 半角カナで入力⇒「送信内容を確認」⇒
> 半角カナのエラーを出した後に「前画面に戻る」⇒
> 半角カナを直す⇒必須入力項目未入力⇒「送信内容を確認」
> とすると、エラー表示が半角カナエラー画面になってしまう
>
> 2.
> ------------------
> 必須項目を入力し、半角カナを記入していない状態にも関わらず、半角カナエラー画面が表示される
>
> ちなみに、半角カナを設定する以前はerr1.htmlは利用しておらず、動作そのものは問題ありませんでした。
>
> 公開前のサイトのため、あまり情報をお出しできず申し訳ありませんが、何卒お力いただきたくよろしくお願いいたします。

正規表現を使って制限されてはどうでしょう。

postmail.cgi
#-------------------------------------------------
# ▲設定完了
#-------------------------------------------------

# フォームデコード
$ret = &decode;

# 基本処理
if (!$ret) { &error("不明な処理です"); }
elsif ($in{'mode'} eq "check") { ✓ }

# POSTチェック
if ($postonly && !$postflag) { &error("不正なアクセスです"); }
if ($in{'メッセージ'} =~ /[。-゚]/) { &error("半角カタカナは禁止です"); } ## ←追加


記事No: 73
投稿日: 2007/04/03(Tue) 15:53:25
タイトルRe^2: postmailにおける半角カタカナのエラーチェックについて
ID情報: deconeco
投稿者: でこねこ
URLhttp://x03.2000710.net/test/sr-sep/contact/inquiry.html

BAL様

早速のレスありがとうございました。
教えていただいた記述でやってみます。
またご報告いたします。

> 正規表現を使って制限されてはどうでしょう。
>
> postmail.cgi
> #-------------------------------------------------
> # ▲設定完了
> #-------------------------------------------------
>
> # フォームデコード
> $ret = &decode;
>
> # 基本処理
> if (!$ret) { &error("不明な処理です"); }
> elsif ($in{'mode'} eq "check") { ✓ }
>
> # POSTチェック
> if ($postonly && !$postflag) { &error("不正なアクセスです"); }
> if ($in{'メッセージ'} =~ /[。-゚]/) { &error("半角カタカナは禁止です"); } ## ←追加


記事No: 105
投稿日: 2007/04/05(Thu) 13:50:45
タイトルRe^2: postmailにおける半角カタカナのエラーチェ
ID情報: deconeco
投稿者: でこねこ
URLhttp://x03.2000710.net/test/sr-sep/contact/shiryoform.html

BALさんありがとうございます。
何とか解決できました。

しかし新たな問題が…
別スレッドを立てましたので、もしお時間がありましたらご教示いただけると幸いです。
よろしくお願いいたします。


[検索ページ]