KANTENNA.COM

Solarized

HOME > WEBプログラム覚書 > PHP+jQuery+Fotolia APIでつくるちょいエロ カルーセル

PHP+jQuery+Fotolia APIでつくるちょいエロ カルーセル

アニメーションががSexyとかじゃなく写真がちょいエロなだけなので 選ぶ写真によっては爽やかにもなりますw

動かすには下記環境が必要になります。

  • PHP5以上
  • jquery-1.3.1以上

注意!ちょいエロはGoogle Adsenseのデリケートな部分に触れる可能性があります。(公共広告になる)

Fotolia

FotoliaはAPIが公開されてて、アフィリエイトもできる写真素材のダウンロードサイト。 ディスカウントもあり個人でも利用できる手頃な値段がうれしい。

まずはユーザ登録してAPIキーを取得しましょう。審査があるので取得まで時間がかかります。

jQueryでカルーセル

とりあえず作ったって感じなので、いろいろと問題があるかと思います。 愛用のプラグインなどあればそちらを利用した方がよいかとおもいますw

キャッシュ

キャッシュはデフォルトでOFFですが利用した方が良いです。 Zend Framework: Documentation: Zend_Cache - Zend Framework Manual を同梱してあるので利用する場合はconfig.phpで設定。そしてキャッシュディレクトリを書き込み可能に。

XML-RPCメモ

XML-RPCとは簡単に言うとXMLをPOSTするとXMLが返ってくるというもの。 最近のWEBサービスで公開されてるAPIはRESTが多く、よく知らなかったんですが よく利用されているみたいです。

で、メソッドとヘッダとコンテンツを送る仕様のはずなんだけど、 メソッドとヘッダを入れるとエラー。

PHP
  1.  <?php
  2.  $opts = array('http'=>array(
  3.   /* エラー
  4.   'method' => 'POST /Xmlrpc/rpc HTTP/1.0',
  5.   'header' => 'Host: api.fotolia.com' . "\r\n" .
  6.   'Connection: close' . "\r\n" .
  7.   'Content-Type: text/xml' . "\r\n" .
  8.   'Content-Length: ' . strlen($this->_query). "\r\n",
  9.   */
  10.   'content' => $this->_query
  11.  ));
  12.  
  13.  $context = stream_context_create($opts);
  14.  $result = file_get_contents(FotoliaAPI::URL_REQUEST, false, $context);
  15.  ?>

どの辺がエラーなのかさっぱりです。そしてなんでmethod、header無しでOKなのかもさっぱり不明。そもそもPHPからどんなヘッダが送られてるのかどうやって確認すればいいんだろ?

ブラウザでパラメータ編集して結果が確認できるRESTの便利さがよく分かりました。

リクエスト

n個のメディア情報を取得する場合、n回リクエストしてる状況なので重い。 1回のリクエストでparamsは1個かと思ってたんですが、レスポンスはとしか書いてない。

もしかしてリクエスト時は複数のparamsを組み込めるのだろうか?

参照サイト

トラックバック(1)

2010年4月16日 02:00

ちょいエロとGoogle Adsense情報備忘録

アドセンスが軒並み公共広告になっているではありませんか。続きを読む

コメント

コメントする
Name
Email Address
URL
TIME LINE
2012
02.10

[雑記]縦横がランダムな要素を隙間なく並べるのは無理なのか。

サイトマップ作ったんだけど、やりたかったことが出来なかった。

2012
02.08

[Ubuntu11.10]Winows XPユーザーがUbuntuを使ってみて

Windows XPとUbuntuのデュアルブート環境にしてみておもったこと。

2012
02.03

[jQuery]closest()とparents()

今から16年前Netscapeブラウザのソースコードの公開方法の会議の中で、初めてオープンソースという言葉が使われた今日、 みなさんいかがお過ごしでしょうか。

今回の投稿はそれとは関係のないjQueryのparents()とclosest()が 似てたので何が違うのか試した時のメモです。

2012
02.01

[jQuery Mobile]初期化イベントメモ

jQuery Mobileは読み込まれてから

mobileinit -> pagebeforecreate -> pagecreate -> pageinit

の順番でイベントが発生する。

2012
02.01

[WordPress]管理画面のフッタのフィルタとアクション。

時間も時間なので、あまり使用頻度の高くない微妙なネタを。

会員制サイトなどで不特定多数の人にログインさせる場合、フッタのバージョン情報は隠しておきたかったり、 こじゃれたメッセージを表示したいときとか使うアクションとフィルタ。

2012
01.28

[WordPress] ブログの情報を取得する方法とノーキャッシュ疑惑

ブログのget_bloginfo()で取れないデータが必要な場合に使うもの。

2012
01.26

[jQuery Mobile]ダイアログ

jQuery Mobileにおけるダイアログの扱いはウインドウではなくページ。 なので通常のページと同様に扱える。ダイアログウインドウを出す。じゃなくダイアログページに遷移する。的な。

2012
01.25

[Ubuntu11.10]Ubuntuのインストール後の設定

インストール完了後の環境構築。PC起動時いちいちBIOSからブートドライブ選んで ブートするのかと思ってたら起動時にOS選択画面が出てくる。

すばらしいですね。

2012
01.24