質問 > その他 > MySQLがUTF-8で、日本語での商品検索ができない |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
ゲスト |
投稿日時: 2007/10/5 6:45
対応状況: −−−
|
MySQLがUTF-8で、日本語での商品検索ができない MySQLの文字コードがUTF-8で使っているのですが、日本語文字列での商品検索ができません。
具体的には、検索結果で「カテゴリ:指定なし」、「商品名:おなべ」と文字化けせずに表示されますが、検索結果は0件になってしまいます。 しかし、検索文字列(商品名)を「空白(指定なし)」で検索すると、すべての商品一覧が出てきます。 管理画面の商品マスタの検索でも同様の動作です。 すべての商品を一覧表示したとき、文字化けなどは発生していません。 http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=1145&forum=2&post_id=3634#forumpost3634 も参考にして試してみたのですが、結果は同じでした。 環境は、 EC-CUBEバージョン 1.3.4 PHPバージョン PHP 5.2.3 DBバージョン MySQL 5.0.24 MySQL の文字セット: UTF-8 Unicode (utf8) です。 何かヒントのようなものでも、助かりますので、ご助言、どうぞよろしくお願いいたします。 |
|
ramrun |
投稿日時: 2007/10/5 9:35
対応状況: −−−
|
仙人 登録日: 2006/11/3 居住地: 投稿: 789 |
Re: MySQLがUTF-8で、日本語での商品検索ができない
|
ゲスト |
投稿日時: 2007/10/5 10:18
対応状況: −−−
|
Re: MySQLがUTF-8で、日本語での商品検索ができない ramrun様、ありがとうございました。
質問された方とは違いますが、ILIKE ⇒ LIKEとして、UTF-8版もEUC-JP版も「なべ」「アイス」でも、検索されるようになりました。 やはり、MySQL使用時には、ILIKE ⇒ LIKEの変更は必須なのでしょうかね。 |
|
ゲスト |
投稿日時: 2007/10/5 13:49
対応状況: 確認中
|
Re: MySQLがUTF-8で、日本語での商品検索ができない 素早いアドバイスどうもありがとうございました。
SET NAME UTF8 の設定も試したのですが、MySQL DBの値が文字化けしてしまう(???になる)ので、デフォルトに戻しました。 いろいろと条件を変えて試したのですが、今のところ、 ILIKE → LIKE への変更のみで、正常に動作しています。 どうもありがとうございました。 追伸: ただ、最初にこの問題に気づいたときは、インストール直後は問題なく日本語でも検索できていて、デザインやブロックのカスタマイズをしているうちに、日本語での検索ができなくなったのです。 /products/list.php 等には変更を加えていなかったのに、何故途中から、日本語での検索ができなくなったのか、不思議です。 これから、デザインの設定をやり直しますので、注意深く探ってみようと思います。 どうもありがとうございました。 |
|
ゲスト |
投稿日時: 2007/10/6 15:26
対応状況: 解決済
|
Re: MySQLがUTF-8で、日本語での商品検索ができない 上記の追伸で、最初は問題なかったけど、ブロック編集をしているうちにおかしくなったと書きましたが、今回は、結局、デザインのカスタマイズが一通り終わった時点でも検索は正しく動いています。
上記の現象の原因は不明のままですが、現状、ILIKE → LIKE への変更で正常に「なべ」「アイス」など日本語文字列で検索できています。 丁寧なご回答どうもありがとうございました。 |
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |