記事表示

#60に関するツリー

[#60] 書き込み部分が文字化けします

Category
ぴーすけ
Date
2007/03/02 20:34
投稿者
Koo

お世話になります。
「ぴーすけ」の設置に初挑戦しています。

表示、書き込みの動作には全く問題なかったのですが、書き込んだ文章がすべて文字化けしてしまいます。(mbstringは有効です)
ファイルを詳しく見てみたところ、dataフォルダ内に生成されるtxtファイル(200703.txtなど)がEUC-JPで出力されていて、どうやら利用しているサーバの設定によるものだと思われました。(レンタルサーバです)
サーバの設定にはあまり詳しくないのですが、.htaccessでの設定変更が許可されているということなので

php_value mbstring.http_output "SJIS"

という.htaccessファイルを作ってp_sche.phpと同フォルダに入れてみました。
ですが、やはり生成されるtxtファイルはEUC-JPのままでした…。(拙いですが自分なりに頑張りました)

この場合.htaccessファイルの記述はどう書くのが正しいのか、また.htaccessの位置はここでいいのか(dataフォルダに置くべきなのでしょうか?)等、アドバイスいただければ助かります。
よろしくお願いします。

#60の記事に返信する


[#61] Re:書き込み部分が文字化けします

Date
2007/03/04 01:48
投稿者
管理人ちゃんかず

ぴーすけのご利用ありがとうございます。
先程スクリプトをバージョンアップしましたので、最新版でお試し下さい。

それでもダメなら、
まずは、
・スクリプトのバージョン
・設置先サーバ名
・動作環境
( http://chankaz.net/php/support/#interpellator に書かれている項目)
をお知らせ下さい。

#61の記事に返信する


[#62] Re[2]:書き込み部分が文字化けします

Date
2007/03/06 14:25
投稿者
Koo

レスありがとうございます。
2.30を削除して最新の2.40を改めて設置してみましたが、状況はまったく同じでした。

そこで、利用しているサーバ(land.toというレンタルです。http://land.to/)に詳しい人に相談してみたところ、「このサーバではmbstringオプションの設定がデフォルトではなく、出力コードと内部エンコードがEUC-JPに固定されているので、JIS前提で書かれたPHPはそのままでは設置できない」という、大体最初の予想通りの助言をいただきました。(今まではEUC出力のPHPしか置いたことがなかったので気付いていませんでした)
そのため、やはり.htaccessでの対応を試してみることにしまして、

php_value output_handler mb_output_handler
php_value mbstring.http_output "SJIS"
php_value mbstring.internal_encoding "SJIS"

という3行の.htaccessを作ってp_sche.phpと一緒に置いてみたところ、ログファイルがJISで生成されるようになり、文字化けせずに表示されるようになりました。
ひとまず自力解決という感じになりましたが、一応報告だけでもと思い、経緯を記させていただきます。
それでは、この度はありがとうございました。

#62の記事に返信する


[#63] Re[3]:書き込み部分が文字化けします

Date
2007/03/06 21:51
投稿者
管理人ちゃんかず

>出力コードと内部エンコードがEUC-JPに固定されている
そうでしたか。
マルチバイトエンコーディングが固定されているサーバもあるのですね。
次バージョンにて対応したいと思います。

経緯を詳細にお知らせ下さり、ありがとうございます。

#63の記事に返信する


[#85] Re[3]:書き込み部分が文字化けします

Date
2007/06/26 09:53
投稿者
Kuni

初めまして。
自宅サーバ(OS:Vine Linux 4.1)にぴーすけ2.40をインストールしてみたのですが、Kooさんと同様、書き込み部分が文字化けしてしまいます。
そこで、Kooさんの投稿にあった.htaccess 

php_value output_handler mb_output_handler
php_value mbstring.http_output "SJIS"
php_value mbstring.internal_encoding "SJIS"

を作ってp_sche.phpと一緒に置いてみたのですが、残念ながら解決しませんでした。もし何か他に対応策が考えられるようでしたらご教授願います。
>
>という3行の.htaccessを作ってp_sche.phpと一緒に置いてみたところ、ログファイルがJISで生成されるようになり、文字化けせずに表示されるようになりました。
>ひとまず自力解決という感じになりましたが、一応報告だけでもと思い、経緯を記させていただきます。
>それでは、この度はありがとうございました。

#85の記事に返信する


[#87] Re[4]:書き込み部分が文字化けします

Date
2007/06/26 20:11
投稿者
管理人ちゃんかず

ぴーすけのご利用ありがとうございます。

>書き込み部分が文字化け
これは、ログファイルに文字化けされて書き込まれるということでしょうか?
それとも、ログファイルは正常なのに表示時に文字化けするということでしょうか?

>残念ながら解決しませんでした。
経緯と症状をもう少し詳しくお書き下さい。

自宅サーバということですので、php.ini または phpinfo() などで mbstring 関連の項目をご確認頂けますか。

#87の記事に返信する


[#90] Re[5]:書き込み部分が文字化けします

Date
2007/07/07 07:29
投稿者
Kuni

レスが遅くなり、大変申し訳ございません。

>ぴーすけのご利用ありがとうございます。
このような便利なソフトを無料で公開していただき、こちらこそありがとうございます。

>>書き込み部分が文字化け
>これは、ログファイルに文字化けされて書き込まれるということでしょうか?
>それとも、ログファイルは正常なのに表示時に文字化けするということでしょうか?

フォームから書き込んだ予定がEUCコードで保存されてしまい、ぴーすけの予定一覧表示では文字化けしてしまうという意味です。
いろいろ試した結果、php.iniファイル中に
mbstring.encoding_translation = On
とあったのを、
mbstring.encoding_translation = Off
と変更することで、解決しました。どうもありがとうございました。今後ともよろしくお願いします。

#90の記事に返信する


[#93] Re[6]:書き込み部分が文字化けします

Date
2007/07/08 00:48
投稿者
管理人ちゃんかず

ご報告ありがとうございます。

>mbstring.encoding_translation = On
>とあったのを、
>mbstring.encoding_translation = Off
>と変更することで、解決しました。

書き込み時に自動でEUCに変換されてしまっていたようですね。
解決されたようでよかったです。

今後ともよろしくお願いします。

#93の記事に返信する