NP_cles()

XML/取り除く/コード/制御

NP_TrackBack v2.01jp2 c3
[2006/02/25] (Plug-in)

先日のc2からさらにバグフィックスを行ったバージョンc3をリリースします。

ダウンロードはこちら [NP_TrackBack v2.01 jp2 c3]
※使い方についてはplugins:trackback [Nucleus CMS Japan Wiki]を参照してください。
Bugfix版のNP_TrackBack v2.0.3jp1をリリースしています。

直したのは下記の2つです
・管理画面のTB一覧でXMLのパースエラーが出る問題(フォーラムで指摘いただいた分を含む)
・トラックバックがひとつしかなくても「Show left 1 Trackbacks」と表示され、クリックすると同じものが表示される問題

XMLのパースエラー問題の解決方法は意外なところから

フォーラムでkosugiatkipsさんに指摘していただいた分はすぐに解決できたのですが、自分の所ではそれでもXMLのパースエラーが起きる場合があって困っていました。今日はちょっと時間があったので、DBに格納されているデータを精査してみたところ、パースエラーになっていると思われる部分に制御コードと思われる見えない文字が入っていることが分かりました。

とりあえずDBをいじってこのコードを取り除くと正常に表示されるので、制御コードを取り除くコードを書こうと思ったのですが・・・・・・このプログラミングをどうすればいいのかわからずちょっと困りました。

Googleでいろいろ探し回ったところ、pukiwikiのshowrss プラグインのchangelog中にXMLパーサが対応していない文字(制御文字など)を取り除くようにした。という一文を見つけたので、これを参考に制御文字を取り除くコードをNP_Trackbackに取り込んでみました。先人の知恵に感謝です。

制御コード削除処理

自分用メモ。

$buf = preg_replace("/[\x01-\x08\x0b\x0c\x0e-\x1f\x7f]+/","",$buf);
$buf = str_replace("\0","",$buf);

コメントを見る(6) コメントをつける
次へ:[6]エディタに機能ボタン追加 (FireFox対応)
前へ:[4]NP_TrackBack v2.x系の使い方
[3]最新の記事一覧
NP_Revisionでエントリの履歴を表示する(03/09)
NP_Clap v1.7(11/29)
NP_Exif v1.0b(09/30)
Nucleus v3.41リリース(04/23)
NP_MetaTags, NP_SpamBayesでエラーが出る方へ(04/08)
Nucleus CMS v3.31 SP3がリリースに(12/17)
NP_TrackBack v2.0.3jp13(12/14)
NP_TrimImage v2.4(12/10)
nc.Vicunaに移行してみようかと(12/07)
NP_OpenIDをXREA/CORESERVERで使う場合の注意(09/03)


[0] cles::blog / [2] 上へ / [3] 最新の記事一覧
8550251 (W:18749 Y:4236 T:0702)

hit counter