选择后多个图像下载

时间:2011-04-13 11:26:54

标签: php image download

这再次是pushan。我通过复选框选中了一个代码来下载多张图片。复选框的value属性包含图像的完整路径。此处未下载图像文件的代码片段:

if(isset($_POST['picdnld'])) {
    $picarry=$_POST['supplier_picture'];
    foreach($picarry as $pic) {
        $handle = fopen($pic, "r");  
        $filename1 = basename($pic); 
        $xt=pathinfo($pic, PATHINFO_EXTENSION);

        $filename=$filename1;
        echo $filename.'</br>';

        $outhandle=fopen('image'."/".$filename,"w");

        if($outhandle){
            echo 'directory found'.'</br>';
        } else {
            echo "directory not found".'</br>';
        }

        while (!feof($handle)) {  
            $buffer=fread($handle,4096);  
            fputs($outhandle,$buffer);  
        }
    }

    fclose($handle);
    fclose($outhandle);
}

供应商图片是其帖子包含图片链接的复选框的名称。我发现$outhandle每次都返回false。请帮我下载多个选定的图像。

2 个答案:

答案 0 :(得分:2)

这不可能以您的方式展示。响应通常只能包含一个图像资源。

最常见的方法是将所有图像放入ZIP文件中,并提供下载。您可以使用ZipArchive类。链接页面包含一个小例子。

答案 1 :(得分:0)

只需阅读图像文件,然后再将其发送到浏览器 在发送到浏览器之前设置内容标头 header ("Content-Type: image/jpeg")