high booster 小型水槽でアクアリウム トップ
  1. high booster-小型水槽でアクアリウム-
  2. コラム一覧
  3. rakuten webserviceを使う「第3回 XMLの出力とJavascript」

Rakukten WebService(Rakuten API)の紹介 その3

前回の内容は以下のページを参照ください。
今回は、その2で紹介したPHPでパースしたXMLをJavascriptで出力する方法を紹介します。

あまり楽天APIとは関係ないですけど(笑)

何でこんなことをするのか(したのか)というと、
  • ページの1部分だけ動的なコンテンツにしたかったから
  • パーツ化して、汎用的に使いたかったから(いろんなページで同じものを使いたかったから)
です。

上記の典型的なケースとしては、「ブログのサイドバーに楽天の売れ筋ランキングを表示したい」とかです。

ページ全体をPHP化して、表示したい部分にPHPのプログラムを書けばこんなことはしなくても済む話なのですが、 それだとメンテナンスが大変です。

また、PHPが動くディレクトリが限られている環境(例えば、cgi-bin以下しかPHPが動かないとか)だったりすると サイト全体の構成を変えなければなりません。
パーツ化して静的HTMLにインクルードしちゃえば、メンテナンスもパーツ化したものだけをすればいいし、 パーツ化したものはアクセスできるURLであればどこでもかまわないので、サイトの構成に手を加える必要も 無くなると思います。

PHPの出力をJavascriptにするには?

方法は簡単です。

  • PHPの出力をJavascriptのdocument.writeで囲む。
  • 静的HTMLの表示したいところに、scriptタグで挿入する
これだけです。では早速やってみましょう。

PHPの出力をJavascriptのdocument.writeで囲む。

この作業はタイトルどおりです。具体的には以下のようなことです。

$output = "document.write(\"表示させたい文字列\")\n";
echo $output;

Rakukten WebService(Rakuten API)の紹介 その2で紹介したPHPをdocument.writeで囲むとこんな感じになると思います。

<?php

$req="http://api.rakuten.co.jp/rws/2.0/rest?operation=ItemRanking&version=2009-04-15&developerId=[デベロッパーID]&affiliateId=[アフィリエイトID]&genreId=[カテゴリID]";

$string = preg_replace('/:/','_',file_get_contents($req));

$xml = simplexml_load_string($string) or die("XMLパースエラー");

$output = "document.write(\"<table>\")\n";
echo $output;
foreach ($xml->Body->itemRanking_ItemRanking->Item as $item) {

  $output.= "document.write(\"<tr><td><img src='" . preg_replace('/http_/','http:',$item->smallImageUrl) . "'></td>";
  $output.= "<td>商品名:".$item->itemName</td></tr>\")\n";

} 

$output .= "document.write(\"</table>\")\n";

echo $output;

?>


静的HTMLの表示したいところに、scriptタグで挿入する。

これは、具体的には以下のようなscriptタグをHTMLに記述すことになります。

<script type="text/javascript" src="PHPスクリプトのURL"></script>

まとめ

Rakukten WebService(Rakuten API)の紹介 その1その2その3で 紹介した内容は、大きく以下の3つです。

  • rakuten webserviceでXMLファイルを取得(その1で紹介)
  • 取得したXMLファイルをPHPで解析(その2で紹介)
  • PHPで解析したXMLファイルをJavascriptで出力(その2で紹介)
これらを組み合わせれば、アイディア次第でいろいろなことが出来ると思います。
rakuten webserviceを使う「第3回 XMLの出力とJavascript」をはてなブックマークに追加 rakuten webserviceを使う「第3回 XMLの出力とJavascript」をYahoo!ブックマークに追加

2009年7月14日 12:27 | コメント(0)

関連するページ


コラム 一覧に戻る>>

【PR】

コメントしてみる

気軽にコメントしてみてください。コメントしてもらえるととてもうれしいです。

管理人も愛用しているお勧めアイテム

スポンサードリンク

アンケート(テスト中)

アクセスランキング(コラム)

人気コラム一覧

アクセスランキング(Blogエントリー)

人気エントリー一覧

このサイトについて

  • 趣味のアクアリウム、音楽、iPod Touchの話題をメインに紹介しています。 気軽にコメント、トラックバックしてください!もちろんリンクフリーです。相互リンクも大歓迎です。

    この日記のはてなブックマーク数



最近のコメント

検索

Powered by
Movable Type 4.21-ja

GT-lolipop Rental Server


カレンダー

2010年5月
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          
あわせて読みたいブログパーツ