バージョン選択

フォーラム

メニュー

オンライン状況

28 人のユーザが現在オンラインです。 (20 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 28
もっと...

サイト内検索

質問 > その他 > データベースから読まれたデータが文字化けしているようです。

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ゲスト
投稿日時: 2007/9/16 23:18
対応状況: −−−
データベースから読まれたデータが文字化けしているようです。
お世話になります。
自分では解決できませんでしたので質問させていただきます。
分かる方がおられましたら、どうかお力をお貸しくださいm(_ _)m


EC-CUBEのインストールを行い、管理画面に入ったらデザイン管理のレイアウト設定のブロックの文字や商品カテゴリが空白になったり会員登録時のご利用規約が数字の1以外空白になっています。
インストール時に入力したショップマスタ登録の店名も空白になります。

画面上部に表示される「>> /install/index.phpは、インストール完了後にファイルを削除してください。」の部分はうまく表示されています。

ページ全体が文字化けではなくデータベースから読まれたデータが文字化けしている感じです。

私の環境を記載します。
どこか間違っているところがあればご指摘をお願いします。

★PHP
php5-5.2.4-0vl0.40

output_buffering = On
expose_php = Off
memory_limit = 64M
default_charset = EUC-JP
allow_url_include = Off
session.save_path = "/var/php5/session"
session.use_only_cookies = On
session.use_strict_mode = On
session.entropy_length = 32
session.hash_function = 1
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = EUC-JP
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;

★MySQL
MySQL-server-5.0.27-0vl3

my.cnfの設定です。
[mysqld]
default-character-set=utf8
skip-character-set-client-handshake

mysql> show variables like "char%";
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

この環境でDBを新しくujisで作成してPHPを
mbstring.internal_encoding = EUC-JPにして
インストールをしたら今度は文字が??????となってしまいます。

mysql> create database `eccube_db` DEFAULT CHARACTER SET ujis;

かなり行き詰っておりますので、どうか宜しくお願いします。
ゲスト
投稿日時: 2007/9/17 13:39
対応状況: −−−
Re: データベースから読まれたデータが文字化けしているようです。
ゲスト
投稿日時: 2007/9/17 14:07
対応状況: −−−
Re: データベースから読まれたデータが文字化けしているようです。
有難うございますm(_ _)m

ずと行き詰っておりましたので本当に助かります。
早速、設定を行ってみたいと思います。
本当に有難うございました。


UTF-8版の開発を行っているようなコメントが昨年にありましたが、早く発表してほしいです。
すると色々と悩まなくてよくなるのに。

本当に早くUTF-8版の発表がされる事を心より待っています。
開発者の皆様、どうか宜しくお願いします。
ゲスト
投稿日時: 2007/9/17 14:49
対応状況: −−−
Re: データベースから読まれたデータが文字化けしているようです。
実行時に文字コードをSQL文で指定すればMySQLバージョンに関係なくいける気もします。

例えばmysql_connect($dbname, $host,xxxxxxx);と言ったDBの接続する記述の部分に
mysql_query("set names ujis");
を追加すればいいように思うのですが、
EC-CUBEの場合、mysql_connectの部分が見当たらないです。

UTF-8仕様のスクリプトも配布していただけると助かるのですが、
まだ発表はなされていない感じです。
ゲスト
投稿日時: 2007/9/17 15:10
対応状況: −−−
解決しました。
eccube_dir/data/class/SC_DbConn.php
の33行目の
$this->dsn = $dsn;の下に下記2行を追加。
$buf = $objDbConn->prepare('SET NAMES ujis');
$objDbConn->execute($buf);

これで今まで空白だった部分が普通に表示される等になりました。
ramrun
投稿日時: 2007/9/19 11:21
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: 解決しました。
解決済みのようですが、一応、参照先が私のコメントになっているようなので説明を入れておきます。

上のゲストさんは 'SET NAMES ujis' で解決したようですが、私の環境ではちょっとだけ文字化けしました。
「あれ、なんでここの1文字だけ文字化けするんだろう?」という程度です。

'SET NAMES binary' としたのはPEAK XOOPS - Warning メッセージについてを参照のこと。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,301名です
総投稿数は110,081件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1652
8
red
1570
9
mcontact
1304
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.