楽天のジャンルデータの作成は、XMLのデータが取得できますが、
手作業で配列データを作成するのは少し手間がかかります。
Excelで作成するのは慣れていましたが、OpenOfficeはまだ慣れていないので配列としてデータを加工するのに時間がかかります。
折角なので、phpで出来ないものか探したところ、同じことをしてくれた人がいました。
Pear XML_Serializerを使ってみた - Webtech Walkerを参考に配列データを作りました。
require_once 'XML/Unserializer.php'; $xml = file_get_contents("http://api.rakuten.co.jp/rws/3.0/rest?developerId=(開発者ID)&operation=GenreSearch&version=2007-04-11&genreId=0"); $Unserializer =& new XML_Unserializer(); $Unserializer->setOption('parseAttributes', TRUE); $status = $Unserializer->unserialize($xml); if ($status === true) { $res_array = $Unserializer->getUnserializedData(); // print_r($res_array); foreach ($res_array['Body']['genreSearch:GenreSearch']['child'] as $key => $value) { $genre_array[] = $value ; } // print_r($genre_array) ; }
$genre_array[][genreId]にジャンルコード
$genre_array[][genreName]に名称
が入っています。セレクトの部分はこのようになります。
<select name="genre"> <?php foreach ($genre_array as $key1=>$value) { ?> <option value="<?php echo $value[genreId] ?>" <?php if ($value[genreId] == $genre ) { echo 'selected="selected"' ;} ?>><?php echo $value[genreName] ?></option> <?php } ?> </select>
0 件のコメント:
コメントを投稿