Ticket #871 (closed 改善提案: 修正済)

Opened 10 years ago

Last modified 9 years ago

メールアドレスの文字長チェックにバラツキ

Reported by: Seasoft Owned by: Seasoft
Priority: Milestone: EC-CUBE2.11.1
Component: その他 Version: 2.5-dev
Keywords: Cc:
修正済み: yes

Description

STEXT_LEN と MTEXT_LEN が混在している模様。

この辺りは、メールアドレスの書式チェックの中で検証する方が良い様にも感じます。(エラーメッセージが分かりにくくなるという弊害は伴いますが、RFC に反するようなメールアドレス長を使用しているケースは超レアケースだと思いますし。)

Change History

comment:1 in reply to: ↑ description Changed 10 years ago by AMUAMU

RFC仕様上はメールアドレス全体の長さの最大長は256文字まで。 最近、転送アドレスの使用などをたまに見かけるようになったため、すっごい長いアドレスも見かけますが256文字以内には収まっているようです。

comment:2 Changed 10 years ago by Seasoft

  • Keywords 2.5.1 added

comment:3 Changed 10 years ago by Seasoft

  • Keywords 2.5.1 removed
  • Milestone changed from EC-CUBE2.5.0beta to EC-CUBE2.5.1(仮)

comment:4 Changed 9 years ago by kajiwara

  • 修正済み unset

30文字や40文字を超えてくるメルアドもそれほど珍しくないように思いますので、TEXT_LEN(200文字)で統一でいいと思います。

STEXT_LEN はもっと、本当に短い「名前」等で使用される想定のはずです。

comment:5 follow-up: ↓ 7 Changed 9 years ago by Seasoft

AMUAMU様が提示されているような256文字といった長い文字数でのチェックならば、メール書式のチェックの中で行えば良いような感じがします。そして、MAX_LENGTH_CHECK は外して良いように思います。

(ソース未確認で書いてます。変なこと書いていたら、ご指摘いただけると幸いです。)

comment:6 Changed 9 years ago by Seasoft

  • Owner changed from somebody to Seasoft
  • Status changed from new to assigned

comment:7 in reply to: ↑ 5 Changed 9 years ago by Seasoft

この方法だと入力フォームでの maxlength が指定できないという欠点を思いついた。しかし、256文字といった長い文字数でのチェックならば、maxlength の指定は不要と考える。

comment:8 Changed 9 years ago by Seasoft

  • 修正済み set

comment:9 Changed 9 years ago by kajiwara

  • Status changed from assigned to closed
  • Resolution set to 修正済

Seasoftさん

ご指摘及び、修正いただき、ありがとうございました。
r20848 にて修正(Eメールチェックにて256の文字数チェック)されていることを確認しました。

基本これで問題ないと思いますが、今後必要(要望)に応じて、EメールMaxをパラメータで設定しても良いと思います。一応備忘録として。

Note: See TracTickets for help on using tickets.