LOGIN ID Password Auto Login Register Now! Lost Password?
XUGJ Forum

Re: ユーザー登録時の文字数制限について

投稿ツリー


このトピックの投稿一覧へ

GIJOE

なし Re: ユーザー登録時の文字数制限について

msg# 1.1
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2009/9/29 4:49 | 最終変更
GIJOE  Admiral 居住地: 2003年4月くらい  投稿数: 3708
shige-pさん、こんにちは。

引用:

使用可能な文字を英数記号に限定すれば何の問題もありません。
が、使用可能な文字に日本語を入れてしまうと(もちろん推奨はされていないのですが)、utf-8環境ではマルチバイト文字1文字=3バイトなので、極端な話「あ」一文字でも通ってしまいます。
(snip)
私はサイトを構築したときの文字コードの違いにより文字制限の挙動が異なることと、内部的な処理がが少しずれているのではないかと思うのですが、いかがでしょうか。
あるいは、この辺りの設計思想はどういう感じなのでしょうか。

設計者ではないので、設計思想なんて判るはずもないのですが、ログインIDであるはずの`uname`を表示用の名前として利用すること自体が本来無理のあることです。

ログインIDなら、エンコーディングの影響を受けないUS-ASCIIキャラクターに限るべきでしょうが、表示名としてUS-ASCIIしか使えないのはマルチバイト圏ユーザにとってはあまりにもプアです。

それを解消しようという動きそのものは6~7年も前からありますが、結局、統一的な方法はいまだにありません。

私も最初の頃のモジュールは、nameとunameのどちらを表示名とするか一般設定で選べるようにしていましたが、最近はそれもむなしい気がしてやっていません。(完全テンプレート化してさえいれば個別に対応できるので、それで十分だろう、というスタンス)


結局、ユーザにとってのまともな選択肢は、

A案
・unameを表示名にする。文字数制限もなるべく緩くする(最大文字数を大きく、利用可能キャラクターを増やす)
・ログインIDにはEmailアドレスを利用する

B案
・nameを表示名にする。
・unameの文字数制限は厳しくする(利用可能キャラクターは少なく)
・unameを表示しているモジュールはテンプレートで対応する。(uidさえ得られればいくらでも手はある)

くらいしかないと思います。
個人的にはA案の方がお勧めです。圧倒的に楽ですから。


このトピックのような問題がおきるとすればA案ですが、それは単に注意書き部分を書き換えるレベルのテンプレートカスタマイズ、もしくは言語定数オーバーライドで対処可能だと思います。
投票数:0 平均点:0.00

  条件検索へ


Back to Page Top
MainMenu
Manuals
Search
XOOPS Official & Dev.
XOOPS Communities