ログイン
ユーザ名

パスワード



パスワード紛失

新規登録
参照元情報
参照なし

このフォーラムではゲスト投稿が禁止されています

このフォーラムに新しいトピックを立てることはできません

Action
list-tree ツリー構造順で表示 sort-down 投稿の新しいものから previous 前のトピック next 次のトピック

通常 イベント案内モジュールの文字化け

イベント案内モジュールの方を利用させて頂こうかと思ってたのですが、下記のように文字化けしております。

選択  項踰1 項踰2 項踰3

また、送信されてきたメールも上記のように文字化けしております。

ずばり、これを回避する方法はないでしょうか?

よろしくお願いします。

当方、XOOPS2.0.7を利用しています。

通常 Re: イベント案内モジュールの文字化け

こんにちは、はじめまして。
私も今朝から同じ症状と格闘しておりましたが、現在下記の部分を変更し正常に動作しています。

//#themeevent.php 95行目あたり

$args = explode("=", $op, 2);
$aname=strtolower($args[0]);

//#変更内容
この部分のstrtolower関数が、文字化けの原因のようでしたので、処理を必要としない場合を分岐しました。

//#size などであれば、strtolower処理を行う。
if (preg_match("/^=/",$op)) {
$args = explode("=", $op, 2);
$aname=strtolower($args[0]);

//#それ以外は、strtolower処理を行わない。
} else {
$aname = $op;
}



//#変更結果

if (preg_match("/^=/",$op)) {
$args = explode("=", $op, 2);
$aname=strtolower($args[0]);
} else {
$aname = $op;
}

PHPについては、素人なので該当箇所までをひとつひとつチェックしていく形で検証致しました。
間違いなどがあるかもしれませんので、お気づきになられましたらご指摘頂ければと思います。

通常 Re: イベント案内モジュールの文字化け

たぶん、意図した動作としては、次のようにするのが良いと思います。

if (preg_match("/^=/",$op)) {
        ↓
if (preg_match("/=/",$op)) {


ところで、この文字化けは稀に報告されるのですが、どうも PHP 4.2.3 にある mbstring (漢字コード) の取り扱いバグの影響を受けている可能性があります。(原理的には文字化けの心配はない部分なので)

まあ、この回避コードを入れても他には支障がないので次の版に入れておきますね。
--
安冨 伸浩 (マイサイト管理人)

通常 Re: イベント案内モジュールの文字化け

引用:
無事文字化けなどの現象が無くなりました。
私も、ぱっと対応できればいいんですけど・・。

無事解決されて良かったです。(*^ー^*)
ぱっと対応できたわけではありませんよぉ。
んっと、6時間ぐらいかけてxoopsオフィシャルでの投稿やPHPマニュアルを検索しながら頑張りました(笑)
起きてる時間がちょっと変だったのと、別の質問を書込みしようとしてたってことがちょうどタイムリーに重なったので。
なにはともあれ、お力になれて良かったです。

いつか、ぱっと対応できるようになれることを祈りつつお互いに頑張りましょ〜♪( ̄  ̄)ノ

と書いたのもつかの間・・・ミスってることに気づきました。ごめんなさい。
nobuさんへの返信に書いてますのでご参照下さい。

通常 ミスってました。

お返事ありがとうございます。

引用:
たぶん、意図した動作としては、次のようにするのが良いと思います。

if (preg_match("/^=/",$op)) {
        ↓
if (preg_match("/=/",$op)) {
これを最初に試したのですが、何故か項目名に「60」がずらっと並ぶだけになりました。
どうしてなのか理解できずに、色々試してみたのですが、どうも上手くいかなかったです。

あ、失敗してる
私が記述した内容だと、全てstrtolowerをスキップしてしまってます。
サイズ指定も無視されている事実を発見。。。。
申し訳ありません。

どうしてご指摘の通りだと上手くいかないのかわからないので、

別の処理を。。。


$args = explode("=", $op, 2);
if (isset($args[1])) {
$aname=strtolower($args[0]);
} else {
$aname = $args[0];
}

これで、現状は問題ないです。
参考にされた方、申し訳ありませんでした。

引用:
ところで、この文字化けは稀に報告されるのですが、どうも PHP 4.2.3 にある mbstring (漢字コード) の取り扱いバグの影響を受けている可能性があります。(原理的には文字化けの心配はない部分なので)

そうですね、私も以前から利用させて頂いていて文字化けは起こっていませんでしたし、今回は設置サーバーが変わったのでサーバー側の処理に起因している気がします。

また、ミスなどありましたらご指摘下さい。

list-tree ツリー構造順で表示 sort-down 投稿の新しいものから previous 前のトピック next 次のトピック



条件検索へ
© 2008 MySite Web Service