From nagata @ ideastore.co.jp Tue Jan 7 17:00:15 2003 From: nagata @ ideastore.co.jp (Masahiko Nagata) Date: Tue, 07 Jan 2003 17:00:15 +0900 Subject: [Tep-j-develop] Re: 住所入力でエスケープ処理?? In-Reply-To: <20021210210444.9BFD.TAMURA@bitscope.co.jp> Message-ID: 田村さん、こんにちは。 永田です。 昨年末の報告しました文字化けの件ですが、原因が判明しました。 Mac OS + Netscape での入力時に起こるようです。 こちらで確認した環境は、 Mac OS 9.2.2 Netscape 7.01 で、IMがON(全角入力)の状態でメンバー登録すると、見事に下記のようになります。 ご住所 国: 日本 都道府県: 三重県 市区町村: 三重郡 住所1: 川越町高松 住所2: 21−1 郵便番号: 510− ご連絡先 電話番号: 0593−65−7241 ファクス番号: 0593−65−6731 # osCommerce日本語20021203版を使って、お正月中に自社サイトを全て作り直したの # ですが、その際に住所1・住所2も半角変換する様にしてあります。 コレって何か対処方法ってありますでしょうか? # 手元に環境が無いので、確認はしてませんが、Windows + Netscapeではこの様な事 # にはならないのでしょうか? From tamura @ bitscope.co.jp Wed Jan 8 13:42:25 2003 From: tamura @ bitscope.co.jp (TAMURA Toshihiko) Date: Wed, 08 Jan 2003 13:42:25 +0900 Subject: [Tep-j-develop] Re: 住所入力でエスケープ処理?? In-Reply-To: References: <20021210210444.9BFD.TAMURA@bitscope.co.jp> Message-ID: <20030108130636.CD76.TAMURA@bitscope.co.jp> 永田さん、こんにちは。 田村です。 > Mac OS + Netscape での入力時に起こるようです。 > > こちらで確認した環境は、 > Mac OS 9.2.2 > Netscape 7.01 そうですか。 Windows版の Netscape 7.01 では、この現象は起こらないようです。 すぐにできる対策としては、下のようにして、全角→半角変換の中に、 問題の特殊文字の変換を含めてしまう方法があると思います。 ●catalog/includes/functions/general.php 1023行 ------------------------------------------------------------ function tep_an_zen_to_han($string) { $string = str_replace('−','-',$string); // 追加する行 return mb_convert_kana($string, "a"); } ------------------------------------------------------------ ただ、[住所2]については、全角→半角変換をしていませんので、 これも変換するようにしてしまった方がいいでしょうね。 それには、以下の3箇所を修正すればいいです。 ●catalog/create_account_process.php 24行目 ('suburb'を追加) ------------------------------------------------------------ $an_cols = array('password','confirmation','email_address','postcode','telephone','fax','suburb'); ------------------------------------------------------------ ●catalog/account_edit_process.php 27行目 ('suburb'を追加) ------------------------------------------------------------ $an_cols = array('password','confirmation','email_address','postcode','telephone','fax','suburb'); ------------------------------------------------------------ ●catalog/address_book_process.php 43行目 変更前 ------------------------------------------------------------ $HTTP_POST_VARS['postcode'] = tep_an_zen_to_han($HTTP_POST_VARS['postcode']); ------------------------------------------------------------ 変更後 ------------------------------------------------------------ $an_cols = array('postcode','suburb'); foreach ($an_cols as $col) { $HTTP_POST_VARS[$col] = tep_an_zen_to_han($HTTP_POST_VARS[$col]); } ------------------------------------------------------------ 試してみてください。 -- 田村敏彦 / 株式会社ビットスコープ E-mail:tamura @ bitscope.co.jp http://www.bitscope.co.jp/ From nagata @ ideastore.co.jp Wed Jan 8 17:02:35 2003 From: nagata @ ideastore.co.jp (Masahiko Nagata) Date: Wed, 08 Jan 2003 17:02:35 +0900 Subject: [Tep-j-develop] Re: 住所入力でエスケープ処理?? In-Reply-To: <20030108130636.CD76.TAMURA@bitscope.co.jp> Message-ID: 田村さん、こんにちは。 永田です。 ご回答頂きました文字化け対策の件ですが、早速組み込んでみましたところ、すっか り改善されました! ありがとうございます!(笑) でも、こういうのはなかなか難しいですね。 個人サイトならいざ知らず、商用サイトの場合「利用できるブラウザーは○○だけで す!」なんて書けませんし、かと言って、世にある全てのブラウザーを試す訳にも行 きませんし。 # 銀行系とかB to Bサイトは、○○だけとか書いてありますが... # 昨晩(今日の朝?)AppleがMac OS X用の新しいブラウザー(Safari)を発表しま # したので、また試さなければいけないクライアント環境が増えちゃいました(^^;) そう言えばMac OS + IE 5(大多数のMacユーザーはこの組み合わせだと思います)で、 管理画面にアクセスすると、左側コラムはスタイルシートが適応されているのですが、 右側は適応されておらず、白バックに文字が表示されています。 今までosCommerce日本語版の初期版へ、独自にOsaka等のフォントを追加したスタイ ルシートを使用していましたので気づきませんでしたが、20021230版を新規にセット アップした時に気が付きました。 スタイルシートをざっと比較した限りでは、なぜ適応されないのか見つける事はでき なかったのですが、とりあえず報告します。 追伸 Mac OS + Netscapeの続きですが、スタイルシートをかなり無視してしまう様で、ア カウント登録画面や変更画面の表示など、かなりマヌケな感じで表示されています。 # まあ、Mac OS + Netscape環境自体が今となってはもの凄く少数派だと思いますの # で、全然深刻な問題では無いと思いますが。