将记录添加到mysql并使用xml和php下载图像

时间:2011-07-06 09:33:00

标签: php xml search

我有一个名为singers.xml的xml文件。我有歌手,文件看起来像这样:

<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 :(得分:1)

我不确定我是否完全理解这个问题,但这是我的建议。

首先获取所有歌手的XML并将其作为您想要图像的歌手列表存储在服务器上。

Web应用程序可以获取列表中的第一个项目,并构建页面以选择图像。将您的选择提交回服务器,存储图像并获取列表的歌手,然后重复序列。

这有意义吗?