トークンについて追記
バリューコマースのトークンの話 - スナックelve 本店
snack.elve.club
これのあとあれこれ弄ってだいぶ使いやすくなったと思う。
あんまりカテゴリとか効かない気がする(;´Д`) もともとものデータが入力適当だろこれ(;´Д`)
PHPファイルのみで良かったわ
<?php //UTF-8のおまじない header("Content-type: text/html; charset=UTF-8"); mb_language("Japanese"); mb_internal_encoding("UTF-8"); ?> <!doctype html> <html> <head> <html lang="ja"> <meta charset="UTF-8"> </head> <body> <form action="" method="post"> <?php //受信済みのデータが有れば入力 if(isset($_POST["search"])) { echo '<p><label for="search">検索文字</label><input type="text" id="search" name="search" value="' . $_POST["search"] . '"></p>'; }else{ echo '<p><label for="search">検索文字</label><input type="text" id="search" name="search" placeholder="検索文字"></p>'; } ?> <p><label for="category">カテゴリ</label><input type="text" id="category" name="category" placeholder="カテゴリ"></p> <p><label for="ec_code">対象ショップ</label><input type="text" id="ec_code" name="ec_code" placeholder="0za6u"></p> <p><label for="page">ページ</label><input type="text" id="page" name="page" value="1"></p> <p><label for="items_count_of_page">1ページのアイテム数</label><input type="text" id="items_count_of_page" name="items_count_of_page" value="50"></p> <p><label for="adult">成人対象</label><input type="text" id="adult" name="adult" value="n"></p> <p><label for="rank_from">○位から</label><input type="text" id="rank_from" name="rank_from" value="1"></p> <p><label for="rank_to">○位まで</label><input type="text" id="rank_to" name="rank_from" value="50"></p> <input type="submit"> </form> <?php // トークンを指定 $value_token = 'ご自分のトークンを指定してね'; //検索文字とか。本当は入力値の妥当性チェックしたほうがいい $search = urlencode($_POST["search"]); $category = $_POST["category"]; $ec_code = $_POST["ec_code"]; $page = $_POST["page"]; $items_count_of_page = $_POST["items_count_of_page"]; $adult = $_POST["adult"]; $rank_from = $_POST["rank_from"]; $rank_to = $_POST["rank_to"]; // 「商品API」のリクエストURL $url = "http://webservice.valuecommerce.ne.jp/productdb/search?token={$value_token}&keyword={$search}&category={$category}&product_id=&sub_store=&merchant=&ec_code={$ec_code}&price_min=&price_max=&size=&color=&stock=&gender=&vcptn=&page={$page}&results_per_page={$items_count_of_page}&maxhits=&sort_by=score&sort_order=desc&adult={$adult}&rank=monthly&rank_from={$rank_from}&rank_to={$rank_to}&format=JSON&callback="; // JSONデータを取得・エンコードしオブジェクトに変換 $json = file_get_contents($url); $obj = json_decode( $json ); if($obj->resultcount=0){ //検索条件に該当する商品がない echo '<p>商品はありません。</p></br><p>' . '</p>'; }elseif( $obj->status == "OK" ){ // 取得した商品データの配列を変数$itemsに格納 $items = $obj->items; foreach( $items as $item ){ $title = $item->title; // 商品タイトルを取得 $link = $item->link; // 商品へのリンクを取得 $ad_tag = $item->pvImg; // 広告表示数カウント用のadタグを取得 $image = $item->imageLarge->url; // ラージサイズの商品画像を取得 if($image==""){$image = $item->imageFree->url;} $price = $item->price;//価格 $merchant_name=$item->merchantName;//広告元のお店 $description = $item->description;//商品説明 //以下特に使っていない $sale_price = $item->sale_price; $sale_start_date = $item->sale_start_date; $sale_end_date = $item->sale_end_date; $product_update_day = $item->product_update_day; //説明が長いとき省略 if(strlen($description)>100){$description = mb_substr($description, 0, 99)."…";} // 商品情報を出力する際のHTML $link="http:" . urldecode($link); $output =""; $output = '<div class="elve_affiliate_tool" style="display: flex"><div class="affi_image" style="width:200; margin: 0; padding: 0; overflow: hidden; position: relative;"><a href="' . $link . '" target="_blank"><img src="' . $image . '" alt="' . $title .'" width="200"></a></div><div class="right" style="width:auto; margin: 0 0 0 20px; padding: 0;"><a href="' . $link . '" target="_blank"><p class="title" style="margin: 0; padding: 0; font-weight: bold; font-size: x-large;">' . $title . '</p><p class="text" style=" margin: 10px 0 0; padding: 0;">' . $description . '(' . $price . '円)</p></a>by ' . $merchant_name . $ad_tag . '<p class="caution" style="font-size: x-small;">※価格はデータ取得時のものです</p></div></div>'; //コード出力 echo '<p>' . htmlspecialchars($output, ENT_QUOTES|ENT_XML1) . '</p>' . "\n"; //テスト表示 echo $output; } }else{ //リクエストエラー echo '<p>商品はありません。</p></br><p>' . $obj->status . '</p>'; } ?> </body> </html>
これで検索するとさー
こういう感じで出てくる。いいじゃーんってソースコピペすると・・・
画像が何をどうしても小さくなる(´;ω;`)
なんで???
・・・ここで見たらきれいに出たわ・・・過去記事直してたらどうしても画像が小さくなって・・・より一層の謎ですwwwww