これは単にCGIの開発者がサボっているだけです。
半角と全角の変換は簡単ですし、ハイフンもそうです。住所の表記を数字と漢数字などのパターン統一となると例外も多いので面倒ですが、たいていの文字列操作は簡単です。
ほかにも生年月日を入力しているのに年齢まで聞かれることもあります。また英和や和英辞書の検索でも、和英だったら日本語、英語だったらアルファベットが入るのに決まっているので、勝手に判別して検索してくれればいいですよね。しかし和英と英和ボタンの2つがあり、間違えると検索できないことが多いです(自動判別してくれるサイトも当然あります)。
開発者がサボっているだけ、と書きましたが、現実には開発用の”仕様書”を作る段階で、仕様書を作る人がそのような知識(文字列操作が簡単などのプログラミング知識)を知らないことが多く、”既存のデータベースで全角でないといけないから”などの理由で深く考えることもなく”住所は全角で入力する”などのようにしてしまうことがあります。開発側は仕様書に沿って開発をしますから、下請けなどの場合は勝手に仕様を変更するわけにもいかず、”こんな使い勝手悪いのになぁ”など考えながら作っていることもあります。
現場の方のご意見のようですね。ありがとうございます。
やはり単なるズボラですか。
ただ、文字列制限のあるサイトの方が、
割合として多いようなので、
「まさか単なる怠慢ではなく、合理的な理由があるに違いない」と考えたのですが・・・。
他の方の回答も引き続き募集します。
Yahoo! JAPAN
URLダミーです。
回答というよりは愚痴なので、ポイントは結構です。
WEB販売の会社に勤めています。会員登録のメールフォームは前任者が作ったもので、全角半角ハイフン等、指定のないものになっています。
しかし、代金回収の代行業者の方にリストを送る(エクセル)時は、カタカナは半角とか、ハイフンを記入とか、指示が細かくて、いちいち直すのが面倒です。
おかげさまで会社も好調で人手が足りませんので、お客様の使い勝手を考慮すべき(このままのメールフォームで続行)か、作業の効率化を計るべき(メールフォーム改造)か、現在悩んでいます。
なるほど、業者間でのデータやり取りで、
文字列形式指定があるのですね。
URLは無関係です。
ひょっしたら的を外しているかも知れないので、その場合はポイントは不要です。
指定があるのは、入力する人を安心させるためというのもあるのではないでしょうか。
実際は全角で入力してもCGIで半角になるんだけれど、わざわざ「半角で」とか書いている場合です。
私もPHPで入力フォームを作ることがよくありますが、そうしてます。
自分が入力する立場になった時に、何も書いていないと「半角でいいのかな? 全角じゃなきゃだめかな?」とか考えてしまうんですよ。送信した時点でエラーとして修正を促さればまだ良いですが、そのまま通ってしまうと「半角で大丈夫だったのかな?」とか不安になります。
特にクレジットカードの番号は、ハイフンのありなしが指定されていないと悩みます。
ああ、なるほど。
ちょっと深読みかもしれませんが、
納得できる理由ですね。
http://internet.watch.impress.co.jp/www/column/ogata/index.htm
???`???G??u??????C?A?r?b?g??M?v?\?\?????R?[?h?????????????????????
漢字(全角文字)の変換方式が統一されておらず、しかも完全には互換性がとれていないからです。
むむ、リンク先がひじょーに膨大ですね。
これは、「文字コード」の変換についての、
お話なんでしょうか?
それは、全角半角変換や、ハイフン自動削除なんかにも、関係してくるのかなー?