PHP Codeigniter - 使用强制下载生成的qr代码时损坏的映像文件

时间:2017-06-11 15:11:48

标签: php codeigniter force-download

我一直在使用我在stackoverflow上找到的几个代码,但它似乎并没有解决我的问题。我希望生成的qr代码强制下载到用户的桌面而不是指定的路径。我试过ob_clean()和一切。这是下载到指定路径时的代码。

        public function event()
       {       
        $data['img_url']="";
        if($this->input->post('action') && $this->input->post('action') == "generate_qrcode")
         {
            $this->load->library('ciqrcode');
            $qr_image=rand().'.png';
            $params['data'] = $this->input->post('qr_text');
            $params['level'] = 'H';
            $params['size'] = 8;
            $params['savename'] =FCPATH."/uploads/".$qr_image;

            if($this->ciqrcode->generate($params))
           {
            $data['img_url']=$qr_image; 
           }
         } 
          $this->load->view('event',$data);
       }

这是我尝试下载时的代码。

       public function event()
     {
      $data['img_url']="";
      if($this->input->post('action') && $this->input->post('action') == "generate_qrcode")
    {
        $this->load->library('ciqrcode');
        $this->load->helper('download');
        $qr_image=rand().'.png';
        $params['data'] = $this->input->post('qr_text');
        $params['level'] = 'H';
        $params['size'] = 8;
        //$params['savename'] =FCPATH."/uploads/".$qr_image;
        force_download($qr_image, $params);
        if($this->ciqrcode->generate($params))
        {
            $data['img_url']=$qr_image; 
        }
    }
    $this->load->view('event',$data);
}

下载qr代码以下载文件,但是当我尝试打开它时,据说该文件已损坏。我试图在记事本上看到错误。这就是它所说的。

A PHP Error was encountered</h4>

<p>Severity: Notice</p>
<p>Message:  Array to string conversion</p>
<p>Filename: helpers/download_helper.php</p>
<p>Line Number: 146</p>

<p>Backtrace:</p>
<p style="margin-left:10px">
File: C:\xampp\htdocs\MySystem\application\controllers\admincontrol.php<br />
Line: 244<br />
Function: force_download

任何人都可以帮我解决这个问题。谢谢。

0 个答案:

没有答案