Home > 備忘録
備忘録 Archive
xoopsでテスト環境を構築したが文字化けしていた
- 2009-03-25 (水)
- 備忘録
xoopsのモジュール改造の仕事をいただいた。ありがたいことです。
まず、お客様のデータをいただきテスト環境を構築したが、気付いたことがあるのでメモ。
お客様の環境はphpスクリプト、MySQLデータベースともEUC-JP。
テスト環境はutf8、MySQLのデフォルトエンコーディングもutf8。
テスト環境でxoopsのindex.phpを実行すると、日本語文字がすべて「????」と文字化けしている。
お客様のphpスクリプトはEUC-JPのままコピーしている、テーブルデータはujis(EUC-JP)でインポートしている。
phpMyAdminでテーブル内容を確認する限り、問題なく日本語は読めている。
文字化けの原因は、(1)phpスクリプトか、(2)MySQLのエンコーディングと思われる。
(1)phpスクリプトはmbstring関係があやしいので、/index.phpから読み出している/mainfile.phpに次の文を追加してみた。
ini_set( “mbstring.language”, “Japanese” );
ini_set( “mbstring.internal_encoding”, “EUC-JP” );
変化はない。
(2)次にMySQL側を調べてみよう。以前SJISのデータを扱う時に
MySQLのクエリに実行の都度以下のようなコマンドを渡した記憶がかすかにある。
SET CHARACTER SET SJIS
Googleで「xoops 文字化け mysql」を検索してみると、まさにそのものという情報があった。
[XOOPSを引越ししたら文字化け]
http://blog.karakuriya.biz/xoops/000587.html
/class/database/mysqldatabase.php を修正するとよいらしい。
具体的な修正箇所は、236行目付近の
$result = & mysql_query($sql, $this->conn);
の上に
mysql_query(“SET CHARACTER SET ujis”, $this->conn);
を追加すること。
この修正でほぼ文字化けは解消した。
「ほぼ」と書いたのは、すべてのモジュールで直ったわけではないからだ。
一部のモジュールは相変わらず「????」のままなのだ。
今回の対象モジュールではないので、放置しておく。必要になった時に調べることにする。
おそらく/class/database/mysqldatabase.phpの「XoopsMySQLDatabase」クラスを利用せず、
独自にmysql_query()を利用しているのだろう。
さぁて、次はターゲットモジュールをすべて読むことにしよう。
まず、お客様のデータをいただきテスト環境を構築したが、気付いたことがあるのでメモ。
お客様の環境はphpスクリプト、MySQLデータベースともEUC-JP。
テスト環境はutf8、MySQLのデフォルトエンコーディングもutf8。
テスト環境でxoopsのindex.phpを実行すると、日本語文字がすべて「????」と文字化けしている。
お客様のphpスクリプトはEUC-JPのままコピーしている、テーブルデータはujis(EUC-JP)でインポートしている。
phpMyAdminでテーブル内容を確認する限り、問題なく日本語は読めている。
文字化けの原因は、(1)phpスクリプトか、(2)MySQLのエンコーディングと思われる。
(1)phpスクリプトはmbstring関係があやしいので、/index.phpから読み出している/mainfile.phpに次の文を追加してみた。
ini_set( “mbstring.language”, “Japanese” );
ini_set( “mbstring.internal_encoding”, “EUC-JP” );
変化はない。
(2)次にMySQL側を調べてみよう。以前SJISのデータを扱う時に
MySQLのクエリに実行の都度以下のようなコマンドを渡した記憶がかすかにある。
SET CHARACTER SET SJIS
Googleで「xoops 文字化け mysql」を検索してみると、まさにそのものという情報があった。
[XOOPSを引越ししたら文字化け]
http://blog.karakuriya.biz/xoops/000587.html
/class/database/mysqldatabase.php を修正するとよいらしい。
具体的な修正箇所は、236行目付近の
$result = & mysql_query($sql, $this->conn);
の上に
mysql_query(“SET CHARACTER SET ujis”, $this->conn);
を追加すること。
この修正でほぼ文字化けは解消した。
「ほぼ」と書いたのは、すべてのモジュールで直ったわけではないからだ。
一部のモジュールは相変わらず「????」のままなのだ。
今回の対象モジュールではないので、放置しておく。必要になった時に調べることにする。
おそらく/class/database/mysqldatabase.phpの「XoopsMySQLDatabase」クラスを利用せず、
独自にmysql_query()を利用しているのだろう。
さぁて、次はターゲットモジュールをすべて読むことにしよう。
- Comments (Close): 0
- Trackbacks (Close): 0
会員ブログから管理画面にログインするのは危険?
「あしたさぬき」では次の場所から管理画面にログインできます。
ところで、会員ブログにはログインフォームは存在しません。
「なんで無いんだろう?」
ブログを始めた頃から疑問に思っていました。
偶然ないのかな?それとも何か理由があるんだろうか?
そんな疑問をすっかり忘れていたのですが、2/14(土)の夜になぜか気になってしまい、眠れなくなってしまいました。
そこで、自分のブログにフォームを付けてみて理由を考えてみました。
全文を読む
- TOPページの右側上部にあるログインフォーム
- 会員ブログページの「あしたさぬきインフォ」にある「ログイン」ボタンをクリック
->移動後のログイン画面
ところで、会員ブログにはログインフォームは存在しません。
「なんで無いんだろう?」
ブログを始めた頃から疑問に思っていました。
偶然ないのかな?それとも何か理由があるんだろうか?
そんな疑問をすっかり忘れていたのですが、2/14(土)の夜になぜか気になってしまい、眠れなくなってしまいました。
そこで、自分のブログにフォームを付けてみて理由を考えてみました。
全文を読む
- Comments (Close): 0
- Trackbacks (Close): 0
IEで選択反転したら別の絵が浮かび上がる
調べものをしていたら、偶然こんなソフトがあることを発見しました。
「IEで選択反転したときに別の絵が浮かび上がる画像」
http://www.forest.impress.co.jp/article/2003/04/11/ctrlaplus.html
みんないろいろ考えていて、面白いですね。
Macだと見えないようですが、IE(InternetExplorer)でブログを表示している時に
キーボードの「Ctrl」キーを押しながら「A」キーを押すと選択反転という状態になり
別の画像が浮かびあがって見えます。
早速、紹介記事のソフトをダウンロードして作成してみました。
表の画像は「あしたさぬき.JP」です。裏の画像は一文字違いの何かです。
(うっすら見えているのでよく見たらわかると思います^^;)
Googleで検索すると作り方の原理とか書いているWebページもありました。
興味のある方は是非自由研究してみてください。
「IEで選択反転したときに別の絵が浮かび上がる画像」
http://www.forest.impress.co.jp/article/2003/04/11/ctrlaplus.html
みんないろいろ考えていて、面白いですね。
Macだと見えないようですが、IE(InternetExplorer)でブログを表示している時に
キーボードの「Ctrl」キーを押しながら「A」キーを押すと選択反転という状態になり
別の画像が浮かびあがって見えます。
早速、紹介記事のソフトをダウンロードして作成してみました。
表の画像は「あしたさぬき.JP」です。裏の画像は一文字違いの何かです。
(うっすら見えているのでよく見たらわかると思います^^;)
Googleで検索すると作り方の原理とか書いているWebページもありました。
興味のある方は是非自由研究してみてください。
お知らせ |
【技術ブログ記事一覧】 これまでに投稿した技術的な記事を、Webデザイン、セキュリティ、 ソフトウェアなどのカテゴリー別にまとめています。 よろしければ時々ご覧ください。 |
- Comments (Close): 0
- Trackbacks (Close): 0
ブログにFaviconを設定
あしたさぬきのブログは設定項目を見る限りFaviconを利用できそうもありません。
念のため、サポートデスクにブログのメインページにfavicon.icoファイルを置けるか確認しました。
対応していません、と回答をいただきました。
ただし、テンプレートをカスタマイズすると任意のfaviconを利用できるそうです。
(そのかわり自己責任でお願いします、と回答がありました)
ネットで対応方法を調べて、自分のブログにfaviconをつけてみました。
実際の手順についてメモをまとめておきます。
全文を読む
- Comments (Close): 0
- Trackbacks (Close): 0
ホーム > 備忘録