[Tep-j-general] Re: 初めまして。で、質問させてください。

Back to archive index

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/





Tep-j-general メーリングリストの案内
Back to archive index