Nucleus(JP)フォーラム Forum Index

Find on the forum:
OR  AND    » Advanced Search

未返信の記事を表示全てのフォーラムを既読にする

新しいトピックを投稿 トピックに返信
投稿者 メッセージ
輝竜司



登録日: 2004.12.24
記事: 33
所在地: 横浜

記事 日時: 2007.03.18 (日) 15:25   記事の件名: 日本語を含むEUC版スキン&テンプレートファイルの読み込みが出来ません:解決
引用付きで返信

配布用のスキンファイルを作っているのですが、
過去ログno.2014のkuriさんと同じ症状になってしまい困っています。
http://japan.nucleuscms.org/bb/viewtopic.php?t=2014

具体的には、Nucleusから書き出したskinbackup.xmlの項目の中で、日本語が含まれる箇所以降が読み込まれず、要素が空っぽになってしまいます(データベース上でも、nucleus_skinやnucleus_template内にはありませんでした)。なお、データのエクスポート自体は出来ていまして、日本語部分を削除したり、文字コードをUTF-8に変換した後管理画面から読み込みを行うと、日本語部分の文字化けはありますが、きちんと読み込みできます。



読み込みがうまく行かなかったのはEUC版のNucleus ver.3.22、3.23、3.24(upしてしまったので、3.23以前で再テストは出来ません…)、サーバーはすべてxreaです。データベースも作成時にEUCにしたと記憶しています。
1)s152サーバー(PHP:5.1.4、MySQL:4.0.26)
2)s212サーバー(PHP:5.1.4、MySQL:5.0.22)
念のため、フォーラムで配布されているスキンの読み込みもいくつか試してみましたが、
上の条件に該当するスキンパーツはすべて読み込めませんでした。
インストールしたままのNucleusでも試してみましたが、プラグインの影響でもないようです。
他にこのような症状が出たよという方、いらっしゃいますでしょうか?
googleでもフォーラム検索でもkuriさん以外に見つからず、サーバー依存なのかなあとも考えています…。

他の方のスキン移植の手伝いのため、スキンパーツ部分やコアファイルに手を加えず、
プラグインも使わずに済む方法を模索しています。
もし環境に依存するようでしたら、その旨と対策を書き添えて配布したいと思います。
どなたか原因や対応策ご存知ありませんでしょうか?よろしくお願いいたします。

_________________
日々何か描いてます。
移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いしますVery Happy
http://citrocube.com/
http://nc.vicuna.jp/


最終編集者 輝竜司 [ 2007.03.19 (月) 22:08 ], 編集回数 5 回

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
shizuki
モデレーター
モデレーター


登録日: 2006.03.23
記事: 891
所在地: 西播磨

記事 日時: 2007.03.18 (日) 16:43   記事の件名:
引用付きで返信

本家のスキンライブラリのスキンでも、パーツの途中までしか読み込めてなかったり、あるいはスキンは読み込めるけどテンプレートが全く読み込めてないものがあったりします
EUC、UTF8関係なく起きるので、いまいち原因は掴めてないんですが、解決策(と言うか逃げ方)としては、
Code:
<%parsedinclude(head.inc)%>
<%parsedinclude(header.inc)%>
<%parsedinclude(navibar.inc)%>
<%parsedinclude(menubar.inc)%>
<%parsedinclude(body.inc)%>
<%parsedinclude(footer.inc)%>

こんな風に作ったりしてます

極端なように見えますが、デフォルトのスキンも似たようなもんなんで、これがある意味正解なのかなぁなんて思ってます

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動 MSNM
輝竜司



登録日: 2004.12.24
記事: 33
所在地: 横浜

記事 日時: 2007.03.18 (日) 17:09   記事の件名:
引用付きで返信

早速の返信有難うございます!

>EUC、UTF8関係なく起きるので、
なんと、そうだったのですか…。

うちでテストした限りでは
・UTF-8版Nucleus(これのみSakuraに設置)にUTF-8版スキン
・EUC-JP版NucleusにUTF-8版スキン
では起こらず、
・EUC版NucleusにEUC版スキン
ではすべて起こったので、UTF-8では大丈夫なのかな?と思い込んでいました Embarassed


>スキンは読み込めるけどテンプレートが全く読み込めてないものがあったりします
こちらは、skinbackup.xml上では
スキン&テンプレート名>スキンの中身>テンプレートの中身
の順で書き込まれているため、のようで、途中に日本語が挟まるとそれ以降の項目が空になってしまうみたいでした。
(テンプレートのみ空になる場合なら、スキンには日本語(2バイト文字?)の記述が無く、
テンプレートに日本語の記述がある)


古いバージョンのNucleusですが、このトピックも症状が近いみたいです。手がかりになりますでしょうか…?
http://japan.nucleuscms.org/bb/viewtopic.php?p=5826

-------------
追記:お礼遅れてしまってごめんなさい、回避法も有難うございます!
defaultスキンがその構造でしたね。盲点でした Embarassed
移植中のもの、構造が綺麗な事で推したいスキンなので、もう少し他の方法も探してみたいと思います。

_________________
日々何か描いてます。
移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いしますVery Happy
http://citrocube.com/
http://nc.vicuna.jp/

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
mas
モデレーター
モデレーター


登録日: 2003.11.14
記事: 292
所在地: 埼玉

記事 日時: 2007.03.18 (日) 18:30   記事の件名:
引用付きで返信

vicura 期待しています。
がんばってください Very Happy

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
輝竜司



登録日: 2004.12.24
記事: 33
所在地: 横浜

記事 日時: 2007.03.18 (日) 20:45   記事の件名:
引用付きで返信

>masさん
有難うございます、微力ながらがんばってきます…!


ところで、上の読み込み失敗の件なのですが、別トピックで出ていたmbstring周りって関係ありますでしょうか?
設定書き写しておきます。xrea上の、EUCで置いているほうのサーバー二つとも同じ設定でした。

xrea(s151、s212)
mbstring
Multibyte Support enabled
Multibyte string engine libmbfl
Multibyte (japanese) regex support enabled
Multibyte regex (oniguruma) version 3.7.1

Directive Local Value Master Value
mbstring.detect_order auto auto
mbstring.encoding_translation Off Off<.htaccessでLocal Valueをonにしてみましたが、だめでした
mbstring.func_overload 0 0
mbstring.http_input auto auto
mbstring.http_output pass pass
mbstring.internal_encoding EUC-JP EUC-JP
mbstring.language Japanese Japanese
mbstring.strict_detection Off Off
mbstring.substitute_character no value no value


こちらはUTF-8で置いているほうのサーバーです。
EUC版のスキンを読み込みしてみましたが、こちらでは問題なく
(もちろん文字化けしていますが)読み込めています。

sakura(www929)
Multibyte Support enabled
Japanese support enabled
Simplified chinese support enabled
Traditional chinese support enabled
Korean support enabled
Russian support enabled
Multibyte (japanese) regex support enabled

Directive Local Value Master Value
mbstring.detect_order no value no value
mbstring.encoding_translation Off Off
mbstring.func_overload 0 0
mbstring.http_input pass pass
mbstring.http_output pass pass
mbstring.internal_encoding ISO-8859-1 no value
mbstring.language neutral neutral
mbstring.substitute_character no value no value

_________________
日々何か描いてます。
移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いしますVery Happy
http://citrocube.com/
http://nc.vicuna.jp/


最終編集者 輝竜司 [ 2007.03.19 (月) 14:10 ], 編集回数 2 回

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
shizuki
モデレーター
モデレーター


登録日: 2006.03.23
記事: 891
所在地: 西播磨

記事 日時: 2007.03.18 (日) 20:50   記事の件名:
引用付きで返信

あ、パーツごとにばらさなくても、
メインの目次ページ
Code:
<%parsedinclude(index.inc)%>

個別アイテムページ
Code:
<%parsedinclude(item.inc)%>

月別アーカイブページ
Code:
<%parsedinclude(archive.inc)%>

アーカイブリストページ
Code:
<%parsedinclude(archives.inc)%>

なんてのもアリです
これだと、それぞれのスキンに書き込んでる内容をファイルに分けるだけで、パーツ別けに頭を悩ます必要もありません
ちなみに、<%parsedinclude%>は、3段までいけるので、インクルードしたファイルの中でもう一回インクルードして、さらにもう一回インクルードできます Cool

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動 MSNM
輝竜司



登録日: 2004.12.24
記事: 33
所在地: 横浜

記事 日時: 2007.03.18 (日) 21:27   記事の件名:
引用付きで返信

shizuki wrote:
ちなみに、<%parsedinclude%>は、3段までいけるので、インクルードしたファイルの中でもう一回インクルードして、さらにもう一回インクルードできます Cool


shizukiさん有難うございます!なるほど、全部インクルードしてしまうんですね。
移植元のスキンの方針から、出来ればブログの基本機能の範疇で何とかしたいなあ、と思うのですが、
インクルード式も検討したいと思います。有難うございます!

#でもあれですね、やっぱり普通はうまくいっているんでしょうか Crying or Very sad >EUC版スキンのインポート

_________________
日々何か描いてます。
移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いしますVery Happy
http://citrocube.com/
http://nc.vicuna.jp/

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
輝竜司



登録日: 2004.12.24
記事: 33
所在地: 横浜

記事 日時: 2007.03.19 (月) 13:53   記事の件名:
引用付きで返信

先ほど、xreaに置いていたNucleusの片方をv3.3 UTF-8 Beta3にアップグレードし、
データベースもUTF-8で作り直してみました。

すると、
1)UTF-8版skinbackup.xmlを読み込み:正常に読み込み可能
2)上記skinbackup.xmlをEUCに変換したもの:日本語以降のスキンパーツ・テンプレートが空
となりました。
バージョン違いなので比較は出来ないのですが、さくらに置いたUTF版Nucleus3.24ではこのような症状はなかったので、
これはNucleusが原因ではなくて、サーバーの設定に依存するものでしょうか Confused

--------
phpinfo()で出てきた設定?の中で、他にも文字コードまわりの記述があったところをメモしておきますね。
xreaの方はここで記述されている文字コードと、mbstring.internal_encodingの値が違うみたいですが…。


xrea(s151、s212)
iconv support enabled
iconv implementation glibc
iconv library version 1.9

Directive Local Value Master Value
iconv.input_encoding ISO-8859-1 ISO-8859-1
iconv.internal_encoding ISO-8859-1 ISO-8859-1
iconv.output_encoding ISO-8859-1 ISO-8859-1


sakura(www929+mysql23)
iconv support enabled
iconv implementation libiconv
iconv library version 1.9

Directive Local Value Master Value
iconv.input_encoding ISO-8859-1 ISO-8859-1
iconv.internal_encoding ISO-8859-1 ISO-8859-1
iconv.output_encoding ISO-8859-1 ISO-8859-1

_________________
日々何か描いてます。
移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いしますVery Happy
http://citrocube.com/
http://nc.vicuna.jp/

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
kotorisan



登録日: 2007.01.17
記事: 7

記事 日時: 2007.03.19 (月) 16:11   記事の件名:
引用付きで返信

nucleus/libs/skinie.php
のプログラムミスです。

phpのヘルプを読みます。「CVIXML パーサ関数」
サポートされるソースエンコーディングは、 ISO-8859-1, US-ASCII , UTF-8 です
ということで 3種しかphpは、xmlを理解できないのです。

・読み込み時にphpが理解できる上記3種にコード変換を行うか
・xmlをutf8で書き出してもらうように改良するか
しかほうほうはないと思います。

根本的な解決は
本家または、日本版で改良してもらうのがいいです。

http://okamerin.com/nc/blogmaster/fix_libs_skinie.htm
こちらにアップしておきましたので
ご覧ください。


最終編集者 kotorisan [ 2007.04.02 (月) 17:00 ], 編集回数 1 回

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
輝竜司



登録日: 2004.12.24
記事: 33
所在地: 横浜

記事 日時: 2007.03.19 (月) 18:02   記事の件名:
引用付きで返信

>kotorisanさん
レス有難うございます、記事を参考にコアの該当部分を入れ替えたところ、
xreaに設置したNucleusで、文字コードがEUCかつ日本語を含むskinbackup.xmlでも
うまく読み込めるようになりました! Very Happy
(なおかつ、skinbackup.xmlがEUCでもUTFでも不具合なく読み込めています)

サーバーによって読み込めたり読み込めなかったりしているのは、
xreaの古い番号のサーバーでは文字コードの自動変換(?用語が分からないのですが…>参考リンク)がoffになっている、
という記事を見かけたので、そのあたりが原因で症状が出たのでしょうか?
ともあれ、本当に有難うございます!

_________________
日々何か描いてます。
移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いしますVery Happy
http://citrocube.com/
http://nc.vicuna.jp/

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
shizuki
モデレーター
モデレーター


登録日: 2006.03.23
記事: 891
所在地: 西播磨

記事 日時: 2007.03.19 (月) 21:46   記事の件名:
引用付きで返信

UTF-8版で、本家で配布されてるスキンが途中までしか読み込めなかった件も、お二方のおかげで解決しました
というか、表示される文字のエンコードと、MySQLの文字エンコードが合ってなかったのが原因でした Embarassed
一番の問題はMySQLにあったようです
文字コードを合わせたところ、問題なくUS-ASCIIオンリーの本家のスキンも途切れることなく読み込むことが出来ました
EUCの方はまだ試せていないんですが、これはkotorisanさんの書かれた方法で対応できたようですので、この辺もあわせて本家に報告できればいいんですが…
いかんせん英語力が…orz

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動 MSNM
輝竜司



登録日: 2004.12.24
記事: 33
所在地: 横浜

記事 日時: 2007.03.20 (火) 14:07   記事の件名:
引用付きで返信

shizuki wrote:
いかんせん英語力が…orz

英語は私も…orz

_________________
日々何か描いてます。
移植のお手伝いさせて頂いた、nc.Vicunaもよろしくお願いしますVery Happy
http://citrocube.com/
http://nc.vicuna.jp/

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
kotorisan



登録日: 2007.01.17
記事: 7

記事 日時: 2009.02.07 (土) 18:03   記事の件名:
引用付きで返信

本家の掲示板に投稿しました。

ISO-8859-1の扱いがよくわからないので
変換しないようにしました。

Shocked本家の掲示板に投稿したコードは試験していないので
コードが間違っていたり、いい案があれば誰か修正してください。

http://forum.nucleuscms.org/viewtopic.php?t=18449

では、私はこの件から 手を引きます Embarassed

トップに戻る

ユーザーのプロフィールを表示 プライベートメッセージを送信 投稿者のウェブサイトに移動
新しいトピックを投稿 トピックに返信
特定期間内の記事を表示:   

Page 1 of 1

All times are GMT + 9 Hours

移動先:  

新規投稿: 不可
返信投稿: 不可
記事編集: 不可
記事削除: 不可
投票参加: 不可
ファイル添付不可
ダウンロード:

Powered by phpBB © 2001, 2002 phpBB Group