2016-07-12 11 views
0

製品の詳細を含むカスタムPDFファイルを作成しています。画像である添付ファイルを表示したいと思います。私はブラウザを介してURLにアクセスすると、私はそれがうまく表示さprestashopディスプレイアタッチインライン

header('Content-Disposition: inline; filename="'.utf8_decode($a->file_name).'"'); 

に添付コントローラが変更されました:

http://domain.nl/nl/index.php?controller=attachment&id_attachment=483 

しかし、私のPDFテンプレートでimgタグ内でこのURLを使用することはできます:

TCPDF ERROR: [Image] Unable to get image: http://domain.nl/nl/index.php?controller=attachment&id_attachment=483 

誰でもこの作品を作成する方法はありますか?

+0

あなたは 'ヘッダ( 'コンテンツタイプのようなラインを持っていますか/ pdf ') '? –

答えて

1

AttachmentInlineController.phpという名前のAttachmentController.phpの横に新しいファイルを作成しました。内容が若干異なっている:私はフックを除去

<?php 
class AttachmentInlineControllerCore extends FrontController 
{ 
    public function __construct() 
    { 
     $a = new Attachment(Tools::getValue('id_attachment'), $this->context->language->id); 
     if (!$a->id) { 
      Tools::redirect('index.php'); 
     } 


     if (ob_get_level() && ob_get_length() > 0) { 
      ob_end_clean(); 
     } 

     header('Content-Transfer-Encoding: binary'); 
     header('Content-Type: '.$a->mime); 
     header('Content-Length: '.filesize(_PS_DOWNLOAD_DIR_.$a->file)); 
     header('Content-Disposition: inline; filename="'.utf8_decode($a->file_name).'"'); 
     @set_time_limit(0); 
     readfile(_PS_DOWNLOAD_DIR_.$a->file); 
     exit; 

    } 
}?> 

、インラインコンテンツの廃棄を変え、そしてpostProcess()から__constructに関数を変更しました。あなたが使用している場合今:アプリケーション:

http://domain.nl/nl/index.php?controller=attachmentInline&id_attachment=483

それは、その添付ファイルをインラインで表示されます、そしてあなたがイメージタグにこのURLを使用することができるなど