デジットさんの生活便利サイトトップへ デジットさんのPEARでAmazonECS(PHP)

トップページ > ホームページ作成 > PEARでAmazonECS

PHPのPEARを使った「AmazonECS」の利用方法です。PEARを使うと驚くほど簡単に「AmazonECS」からデータを取得できますので、アフィリエイトも簡単にはじめられます。

AmazonECSとは

Amazon Web サービスに登録すると利用できる「AmazonECS」は、Amazonの扱う商品(本、CD、DVD、電気製品、玩具、衣類、ジュエリー、家具など)の商品データベースを自由に使うことがデルサービスです。既存のAmazonのWebサイトと同等の機能を、そっくりそのまま自分でプログラミングして作り上げることもできます。
Amazonアソシエイト・プログラムというアフィリエイトの仕組み(ASP(広告代理店))にもあわせて参加すると、自分の紹介した商品が購入された場合、販売代金の数%をAmazonから受け取ることができます。

PEAR::Services_AmazonのECS4を利用する

まだβ版ですが、PEAR::Services_AmazonというPHPの純正パッケージが使えます。PHPの基本的な知識があれば、簡単に利用できます。パッケージは、PEARインストーラーを使えば、簡単に出来ます。PEARのパッケージは、「Services_Amazon-0.7.0」とキャッシュを利用するための「Cache」をインストールしておきます。
ここでは、手始めとして「ItemLookup(ASINなどのItemIdで、商品を検索)」を使ってみます。「ItemSearch(商品名、著者名などで検索)」の利用法は、他のページで紹介する予定です。サンプルリストは次の通りです。
PEAR::Services_Amazonには、「Services/Amazon.php」もありますが、「Services/AmazonECS4.php」を使用します。こちらの方が、最新版です。次に、「自分のAccess Key ID」と「自分のAssociate ID」を指定した、インスタンスを作ります。「自分のAssociate ID」を"null"にしても接続できますが、アマゾンのアソシエイトに参加してIDを取得すれば、購入された商品の数%が手に入ります。「setLocale('JP')」は、日本のAmazonサイトを利用する設定です。ここでは、「$option = array( 'ResponseGroup'=>'Small,Images' );」で最低限の情報(Small)と、画像(Images)をオプションに設定しました。「$result = $amazon -> ItemLookup ('4798108766',$option );」は、商品コード(4798108766)を指定して、Amazonのデータベースからデータを受け取る命令です。結果は、配列で「$result」にセットされます。(4798108766)は、書籍「極める!PHP」のISBN(商品コード)です。データは、これだけで取得できます。
そこからは、取得したタイトルと画像(画像が無い場合はnoimg.jpgファイルを表示)をリンク文字として表示しているだけです。「noimg.jpg」は、じぶんで画像を用意してください。取得した配列のデータを表示したい時は、「print_r ($result);」で確認できます。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PEAR Amazonウエブサービス(商品ID指定)</title>
</head>
<body>
<?php
require_once 'Services/AmazonECS4.php';
$amazon = new Services_AmazonECS4('自分のAccess Key ID','自分のAssociate ID');
$amazon -> setLocale('JP');
$option = array( 'ResponseGroup'=>'Small,Images' );
//Accessに接続しデータを取得
$result = $amazon -> ItemLookup ('4798108766',$option );
if (PEAR::isError($result)){
die ( $result -> message );
}
//画像取得
$img = null;
if (isset($result['Item'][0]['MediumImage'])){
$img = $result['Item'][0]['MediumImage'];
}
$src = $img ? $img['URL'] : 'noimg.jpg' ;
$width = $img ? $img['Width'] ['_content']: 100;
$height = $img ? $img['Height'] ['_content']: 100;
//結果表示
$html = <<< EOT
<div style="text-align:center">
<a href = "%s">
<img src ="%s" width ="%d" height="%d" /><br/>%s</a>
</div>
EOT;
printf ( $html,
htmlspecialchars($result['Item'][0]['DetailPageURL']),
htmlspecialchars($src),
htmlspecialchars($width),
htmlspecialchars($height),
htmlspecialchars($result['Item'][0]['ItemAttributes']['Title']));
?>
</body>
</html>

これで、Services_AmazonのECS4の基本動作が出来ました。
PEARのパッケージ「Cache」は使用しませんでしたが、PEARでAmazonECS(2)で使います。 レンタルサーバーのロリポップでは、動作確認できています。

AmazonECSの参考サイト

「AmazonECS」のもっと詳しい情報は、次が参考になります。

  1. WebサービスをAmazonで知る――ECS 4.0でアフィリエイト(前編)
  2. WebサービスをAmazonで知る――ECS 4.0でアフィリエイト(後編)
  3. Amazon Web Services Developer Connection Japanese

ホームページを公開するレンタルサーバーは、 ロリポップ! がお薦め、 PHP5を使うならPHP5から選ぼう。

関連ページ

ホームページ作成

アフィリエイト

デジットさんのホームページ入門に移行中

スポンサード リンク

Amazon.co.jpアソシエイト:
PHP&プログラミング

売れている順 新刊順

:%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%20php :php2_  :5

とことん!ホームページホームページ入門役立つサイトデジットさんのリストラ日記仮福真琴の精神科医はうそだらけ

2005-2010 Copyright © Digit-01 All Rights Reserved.