2011-07-06 10 views
0

xmlファイルsingers.xmlがあります。私はそれで歌手を持っており、ファイルは次のようになります。mysqlにレコードを追加し、xmlとphpを使って画像をダウンロードする

<singers> 
    <name>tiesto</name> 
    <name>benny benassi</name> 
    ..........  
</singers> 

私は基本的にしたいことは、私はそれぞれの歌手のためにONE検索BY ONEおよび4枚の画像を見つけ、クリックして、一つの画像を選択し、画像をダウンロードすることができるということですし、歌手をデータベースに追加します。

私は、画像を検索するには、この機能を持っている:

function getImgUrl($name) { 

$url = 'http://ajax.googleapis.com/ajax/services/search/images?'; 
$manual = 'http://localhost:8080/'; 
$args = array(
    'v' => '1.0', 
    'q' => $name, 
    'as_filetype' => 'jpg', 
    'imgsz' => 'medium', 
    'safe' => 'active', 
    'as_filetype' => 'jpg' 
);` 

foreach($args as $key => $val) { 
    $url .= $key . '=' . rawurlencode($val) . '&'; 
} 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_REFERER, $manual); 
$body = curl_exec($ch); 
curl_close($ch); 

$json = json_decode($body, true); 
$results = $json['responseData']['results']; 

return $results; 
} 

そして、私はそうのようにそれを使用しています:

foreach($xml as $key => $val) { 
    $results = getImgUrl($val); 

    foreach($results as $result) { 
     echo '<img src="' . $result['url'] . '" alt="" /><br />'; 
    } 


} 

しかし、このコードに問題があります。私が言ったように、私が望むのは、各歌手のイメージを1つずつ見て、イメージを選んだ後、次のイメージに移動することです。

これは可能ですか?

+0

「問題があります」と書いたのですが、その問題は何ですか?配列定義の後のバックティック、データの取得など。 – Kwebble

+0

@Kwebble私が本質的に望むのは、XMLファイルから歌手を一つずつ引き離すことです。それらのすべてを一緒にするのではなく、可能ですか? – Pinokyo

答えて

1

私は質問を完全に理解しているかどうかはわかりませんが、ここに私の提案があります。

すべての歌手でXMLを取得して、画像が必要な歌手のリストとしてサーバーに保存します。

Webアプリケーションは、リストの最初の項目を取得し、画像を選択するページを作成できます。あなたの選択をサーバーに戻し、画像を保存してリストの歌手を連れて、シーケンスを繰り返します。

これは意味がありますか?

+0

よろしくお願いします – Pinokyo

関連する問題