压缩从mysql查询生成的xml引用的图像

时间:2012-09-11 15:48:23

标签: php mysql xml

好的,我会尝试尽可能地让它变得容易!

背景:我正在创建一个XML Feed,以便使用php从MySql数据库中显示ebay motor pro上的汽车。我已成功创建了包含所有相关详细信息的xml文件,这些文件也是ftp到我的测试服务器。

问题:每张车照都以regnumber_1.jpg,regnumber_2.jpg的身份记录在数据库中;等等,并链接到每辆车。图像位于名为autotrader的文件夹中。

我无法将图片从autotrader文件夹发布到zip文件中的ebay文件夹中。我只想复制mysql查询中的照片(即不是整个文件夹)。

我怀疑是因为我没有正确地完成foreach循环,但希望有人能够指出我正确的方向?这是代码:

//Photos bit...
$destination = 'tmp/ebay';
$filename = 'ebay-photos';

//images array
$row = array();
foreach ($result->images as $images) {
$images = explode(',', $row['images']);
foreach ( $images as $image ) {
copy('uploads/used-cars/autotrader/' . $image, $destination . $image);
$all_images[] = $image;
}
}

exec('zip  -g0 ' . $zip_filename . ' *.jpg *.jpeg');
foreach ( $all_images as $image ) {
@unlink($destination.$image);
}
$zip_filename = $filename . '.zip'; 

while ($row = @mysql_fetch_assoc($result)){  
$all_images->images as $images);
} 

XML位有效,并且是:

while ($row = @mysql_fetch_assoc($result)){  
// XML  
$node = $dom->createElement("ad");  
$newnode = $parnode->appendChild($node);   
$newnode->setAttribute("vrm",$row['vrm']);
$newnode->setAttribute("make",$row['make']);
$newnode->setAttribute("model",$row['model']);
$newnode->setAttribute("type",$row['type']);
$newnode->setAttribute("consumerPrice",$row['consumerPrice']);
$newnode->setAttribute("numPreviousOwners",$row['numPreviousOwners']);
$newnode->setAttribute("transmission",$row['transmission']);
$newnode->setAttribute("images",$row['images']);
$newnode->setAttribute("numPreviousOwners",$row['numPreviousOwners']);
$newnode->setAttribute("color",$row['color']);
} 

$dom->save('tmp/ebay/ebay.xml');
echo $dom->saveXML();

提前致谢!

1 个答案:

答案 0 :(得分:2)

我创建了一个单独的php文件来检索照片,然后ftp压缩文件。

现在可以关闭。