• ベストアンサー

フォームメールで名前を全角のみにする方法

フォームメールでいたずら防止のため、名前の欄に全角文字しか入力できないような物を探しています。 なかなか、見つからないのですが、もしご存じの方がいましたら教えてください。フリーウェアもしくはシェアウェア程度ならお金も払えます。 もしくは、フリーの物の改造の仕方でも結構です。 ご存じの方いらっしゃいましたらお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Ethersky
  • ベストアンサー率71% (168/235)
回答No.1

全角文字しか入力できない=半角文字があったらアウト ということなので、正規表現で、 if($hoge =~ /[\x00-\x7F]/){アウト時の処理} ただし、全角で英数字を打ったときには効かないのでJcode等でA-Z0-9はA-Z0-9に変換してやったほうがいいでしょうね。

ironika
質問者

お礼

いろいろ調べながらテストしましたら、何とか解決できました。 Ethersky様のこの回答が、解決にとても役立ちました。 本当に親切に教えて頂きありがとうございました。

ironika
質問者

補足

ご回答頂き有り難うございます。当方CGIに関しては初心者のためもう少し教えて頂けたらと思います。 現在、以下のフォームメールの使用を検討しておりますが、このCGIを利用する場合、何行目に上記のプログラムを入力したら良いでしょうか。 不躾な質問で申し訳ありませんが、もし解りましたらご回答お願い致します。 http://www.kent-web.com/data/postmail.html

その他の回答 (3)

  • Ethersky
  • ベストアンサー率71% (168/235)
回答No.4

> ime-mode: active これでMS-IMEがはじめから有効になりますが、普通に切ることができます。(強制力がない) おまけにInternet Explorerにしか効きません。 (FirefoxやNetscapeには無力です)

ironika
質問者

補足

いろいろとご回答いただきありがとうございます。 No.1の方法で良いところまでできたのですが、もうひとつだけお聞きしたいことがございます。 No.1の方法でやりますと、全角カタカナが拒否されてしまいます。全角カタカナを許可する方法がございましたら、ご教授いただきたいと思います。 本当にいろいろ勝手な質問をしまして申し訳ございません。 よろしくお願いいたします。

回答No.3

htmlファイルの方をスタイルシートにて対応、 おなまえ<br><input type=text name="name" size=35 style="ime-mode: active;"><br>

  • Ethersky
  • ベストアンサー率71% (168/235)
回答No.2

> 何行目に上記のプログラムを入力したら良いでしょうか。 KENT WEBにはサポート掲示板があります。 もちろん改造に関する質問も受け付けています。 そこで訊いてみてください。 (ここで私が改造後のスクリプトのダウンロードURLを示すと私のホームページ上のサーバーにファイルを置くことになるので「教えて!goo」の利用規約第四条に反してしまいます。かといって、○○の□行目を・・・といちいちいうのも面倒なので本家本元で訊いてください)

参考URL:
http://www.kent-web.com/support/index.html

関連するQ&A