BLOG マイロプスブログ

access_time2022.02.24

ブログ

CakePHP3の「email」バリデーションを過信してはいけない話

こんにちは、マイロプスでエンジニアをしているFukushimaです。私は業務でCakePHP3を使っているのですが、その際に起きたことを共有したいと思い今回のブログを書きます。
タイトルの通りemailバリデーションを過信してはいけないということです。

ユーザーにメールアドレスを正しく入力してもらうにはこのバリデーションは必須です。メールアドレスを送る際に形式が崩れているメールを送ろうとするとエラーの原因になってしまいます。崩れる原因としては気付かない間にスペースを入れている可能性があります。そのような事を想定してvalidatorに下記のような

を入れていました。
これを入れておけば厄介なスペースが入っていても弾いてくれるので非常に便利です。

これでスペースの問題は解決したので問題ないと思ったのですが、一つ問題が出てきました。このemailバリデーションは全角文字が混入した場合は検知してくれません。
その為、「〇〇〇〇あ@▲▲.jp」のようなメールを正常と判断して通してしまいます。
このようなケースはあまりないと思いますが通してしまうのはマズいので修正をします。

上記のように正規表現で半角英数字と一部の記号だけが入力できるようにしました。
これにより全角文字の検知するバリデーションになります。
もし、emailバリデーションを入れている人がいたら全角文字防止のロジックは入れておいた方が良いです。
以上、最後まで読んでいただきありがとうございました

マイロプスでは一緒に働いてくるエンジニア、デザイナーを募集中です!

人と人、人とコト、人とチャンスを繋げられる自社プロダクトの開発等を一緒にやってみませんか?

・ITとデザインのチカラで、なにか面白いことができないかと思っている人

・デザインを制作だけでなく人と人、モノ、コトとの関係性の設計と捉え、 社会を動かす重要な概念だと思っている人。
やりたいことがあればどんどん発言できる会社なので私個人的にはITに興味があって好奇心旺盛な人ならきっと飽きない会社だと思います。

興味がある方は求人ページをご覧ください。

エンジニア

Fukushima

SESを2年経験し、マイロプスに入社。
週末は趣味のバスケットボールをしている。

関連ブログ記事

  • access_time2021.11.19

    ブログ

    CakePHP4でのGoogle API連携 後編 〜CakePHP4でのスケジュール操作〜

  • access_time2021.09.10

    ブログ

    CakePHP4でのGoogle API連携 〜Google API連携準備編〜

最新の実績実例

  • access_time2020.02.04

    実績・実例

    ティエムファクトリ株式会社 公式ウェブサイト制作

  • access_time2020.02.04

    実績・実例

    プロジェクトイッカク ウェブサイトリニューアル

  • access_time2019.01.21

    実績・実例

    某製薬会社様向けの動画視聴申し込みサイトの制作


CONTACT お仕事のご相談、採用についてなどお気軽にお問い合わせください。