Advertisement
Guest User

Untitled

a guest
Aug 10th, 2014
434
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2.  
  3. /**
  4.  * 呼叫 flickr.people.getPublicPhotos
  5.  * @param string $user_id 要傳回照片的user id
  6.  * @return string json格式的字串
  7.  */
  8. function getPublicPhotos($user_id) {
  9.     $ch = curl_init();
  10.     //產生API網址,有部分參數在此寫死,例如輸出格式這邊是直接設定為JSON
  11.     $api_key = '3dd490cec911376eb3356af84efc05e6';
  12.     $url = "https://api.flickr.com/services/rest/?method=flickr.people.getPublicPhotos&api_key={$api_key}&user_id={$user_id}&format=json&nojsoncallback=1";
  13.     $options = array(
  14.         CURLOPT_URL => $url,
  15.         CURLOPT_HEADER => false,
  16.         CURLOPT_RETURNTRANSFER => true,
  17.             //CURLOPT_SSL_VERIFYHOST => 0,
  18.             //CURLOPT_SSL_VERIFYPEER => 0,
  19.     );
  20.     curl_setopt_array($ch, $options);
  21.     $result = curl_exec($ch);
  22.     curl_close($ch);
  23.     return $result;
  24. }
  25.  
  26. //檢查是否有GET的user_id參數
  27. if (isset($_GET['user_id']) and !empty($_GET['user_id'])) {
  28.     $user_id = $_GET['user_id'];
  29.     $data = getPublicPhotos($user_id);
  30.     $json = json_decode($data, true);
  31.     $photos = $json['photos']['photo'];
  32. } else {
  33.     $photos = array();
  34. }
  35. ?>
  36.  
  37. <html>
  38.     <head></head>
  39.     <body>
  40.         <form method="get">
  41.             <label>user_id <input type="text" name="user_id" value="<?php echo isset($_GET['user_id']) ? $_GET['user_id'] : ''; ?>"></label>
  42.             <input type="submit">
  43.         </form>
  44.         <div>
  45.             <?php
  46.             foreach ($photos as &$photo) {
  47.                 //產生flickr的連結
  48.                 $url = "https://www.flickr.com/photos/{$photo['owner']}/{$photo['id']}";
  49.                 //產生照片的連結
  50.                 $img = "http://www.flickr.com/photos/{$photo['id']}_{$photo['secret']}.jpg";
  51.                 //另一種產生照片連結的方法
  52.                 //$img = "https://farm{$photo['farm']}.staticflickr.com/{$photo['server']}/{$photo['id']}_{$photo['secret']}.jpg";
  53.                 echo "<a href=\"$url\" target=\"_blank\"><img src=\"{$img}\" border=\"0\"></a>\n";
  54.             }
  55.             ?>
  56.         </div>
  57.     </body>
  58. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement