• 249月

    先日作った、RSS更新情報と、はてなアンテナのPHPですが、
    PHPのままだと、どこでも呼び出せるというわけではないので、
    JavaScriptで埋め込むようにしてみました。

    参考になったのは、以下のサイト様です。
    http://www.res-system.com/weblog/item/383

    ほぼそのままで実現できましたが、生成された文字列に改行が
    含まれないように気をつける必要があります。
    また、閉じる文字の関係で、シングルクォーテーションも避けたほうが
    安心です。

    ということで、以下のコードでこれらを後処理で取り除きました。

    $str = str_replace(array(“\r\n”,”\n”,”\r”,”\t”), “”, $str);
    $str = str_replace(array(“‘”), ”, $str);

    あと、document.writeの最後には、セミコロンを指定したほうが
    良いかと思います。

    これでJavaScriptを貼り付けるだけで、どこでも更新情報を
    埋め込めちゃいます。

    <script type=”text/javascript” charset=”utf-8″ src=”http://saramac.main.jp/rssup.js”></script>

    あと、ついでにレンタルサーバのPHPのバージョンを5にアップデート
    しておきました。
    こちらのほうが意外にやっかいで、mb_convert_encodingでエラーが
    出て、びっくりしました。
    php.iniを以下のように変更することで、解決しました。

    mbstring.language Japanese

    ほかにも、PEARがなくてインストールしたり、RSSの取得ライブラリが
    うまく動かず修正して、なんとか無事に稼働してるようです。

    どうもnew XML_RSS()でURLを引数にするとダメみたいなんですよねぇ
    事前にfile_get_contents()あたりで取得しておいて、setInputString()で
    文字列を設定してあげたら動作するようになりました。

    これを発展させれば、汎用的なモジュールも作れそうですね。
    「いぬリンク」のサイドパーツあたりを作ったら、需要はあるかな?
    まぁ、現状のレンタルサーバでは負荷が多そうなので、状況を見つつ、
    作ってみようかな。

    4797347856 PHPによるWebアプリケーションスーパーサンプル活用編 第2版
    ソフトバンククリエイティブ 2008-07-12

    by G-Tools

    (当サイトでは、Amazonアソシエイトをはじめとした第三者配信のアフィリエイトプログラムにより商品をご紹介致しております。)

    Filed under: Blog
    2009/09/24 3:48 pm | JavaScriptからPHP呼び出し はコメントを受け付けていません

Comments are closed.