0

我需要使用提交按钮从页面下载特​​定图像,所以我使用表单和 php 提交操作,这里是我的 html 和 php 代码

HTML 代码

<form name="logo" action="" method="post">
<input type="hidden" name="lgpath" value="images/logo/<?php echo $SelPro['lgpat'];?>">
    <img src="images/cmplogo/<?php echo $SelPro['lgpat'];?>">               
    <div><input type="submit" value="<?php echo $SelPro['lgname'];?>" name="dwnlg" id="dwnlg"></div></div>
    </form>

PHP 代码

<?php
    if($_POST['dwnlg'])
    {
        $LgPath=$_POST['lgpath'];
        header('Content-Disposition: attachment; filename="'.$LgPath.'"');
    }
?>

我提供了将图像下载到标题的路径,但它仅将当前页面下载为文件,我该如何解决?

4

2 回答 2

2

试试下面的代码下载

<?php 
    if($_POST['dwnlg'])
    {
        $LgPath=$_POST['lgpath'];
        header("Content-type: image/jpeg");  
        header('Content-Disposition: attachment; filename="'.$LgPath.'"');  
        header('Content-Transfer-Encoding: binary');
        header('Expires: 0');
        header("Cache-Control: public");
        header('Cache-Control: must-revalidate');
        header('Pragma: public');
        header('Content-Length: ' . filesize($LgPath));
        readfile($LgPath);  
     }
?>  

在内容类型中:

         if your image is in png format then it will be :
         header("Content-type: image/png");
         if your image is in jpeg format then it will be :
         header("Content-type: image/jpeg");
于 2012-06-27T06:50:53.640 回答
0

设置标头只是告诉客户端数据是什么以及如何处理它,它不会发送数据。

您可以使用readfile来做到这一点

<?php
    if($_POST['dwnlg'])
    {
        $LgPath=$_POST['lgpath'];
        header('Content-Disposition: attachment; filename="'.$LgPath.'"');
        readfile($LgPath);
    }
?>
于 2012-06-27T06:51:15.617 回答