TAMURA Toshihiko
tamur****@bitsc*****
2004年 9月 14日 (火) 19:36:13 JST
こんにちは、田村です。 okatti さん: > 運用上で、ひとつ問題が出てしまいました。 > 新規入会の申し込みで、都道府県がプルアップになり、 > 「必須」というのがでてしまって、そこから先に進めないのです。 > 例えば、最初の登録画面で「香川県」と入力し、 > 確認の画面にいきますが、そこで都道府県がプルアップのメニューになっていて、 > そこは最初から「香川県」になっているのですが、 > そのまま次に進もうとすると「必須」とでて進めません。 > 例えばそこを「徳島県」に変更すると、進めるようになります。 MySQLの文字コードの指定ができていないためだと思います。 [Tep-j-general] Re: 生年月日と都道府県入力についての不具合。 http://lists.sourceforge.jp/mailman/archives/tep-j-general/2003-July/002701.html 根本的な解決は my.cnf でMySQLの設定を変更することなんですが、 もしレンタルサーバでそれができなければ、 クエリーにbinary指定を加える方法もあるというのを教えてもらいました。 catalog/create_account_process.php を次のように変更します。 ------------------------------------------------------------ if ($entry_state_has_zones == true) { $zone_query = tep_db_query("select zone_id from " . TABLE_ZONES . " where zone_country_id = '" . tep_db_input($country) . "' and BINARY zone_name = '" . tep_db_input($state) . "'"); if (tep_db_num_rows($zone_query) == 1) { $zone_values = tep_db_fetch_array($zone_query); $zone_id = $zone_values['zone_id']; } else { $zone_query = tep_db_query("select zone_id from " . TABLE_ZONES . " where zone_country_id = '" . tep_db_input($country) . "' and BINARY zone_code = '" . tep_db_input($state) . "'"); if (tep_db_num_rows($zone_query) == 1) { $zone_values = tep_db_fetch_array($zone_query); $zone_id = $zone_values['zone_id']; } else { $error = true; $entry_state_error = true; } } } else { ------------------------------------------------------------ -- 田村敏彦 / 株式会社ビットスコープ E-mail:tamur****@bitsc***** http://www.bitscope.co.jp/