以Yii格式查看PDF
我有PDF存储在一个文件夹中,现在我想通过我的表单页面上的链接查看它。我将如何使用Yii框架实现它以Yii格式查看PDF,pdf,yii,mpdf,Pdf,Yii,Mpdf,我有PDF存储在一个文件夹中,现在我想通过我的表单页面上的链接查看它。我将如何使用Yii框架实现它 echo CHtml::link( 'pdf', Yii::app()->createUrl('/uploads/Tutorial.pdf') , array('class'=>'button','target'=>'_blank')); 我收到的错误如下所述,我还尝试在allow of controller中包含上载。 错误 错
echo CHtml::link(
'pdf',
Yii::app()->createUrl('/uploads/Tutorial.pdf') ,
array('class'=>'button','target'=>'_blank'));
我收到的错误如下所述,我还尝试在allow of controller中包含上载。
错误错误404
无法解析“uploads/Tutorial.pdf”请求。
我正在使用mPDF生成PDF,但我不知道如何使用Yii查看已生成的PDF。您还需要其他一些东西才能完成此工作。你可能已经做了一些,但没有粘贴它,但这里去 我假设您已通过以下方式将您的站点设置为使用带.htaccess的干净URL。现在您可以添加: 在config/main.php的urlmanager部分中,您需要一个到控制器类和操作方法的路由。这会告诉Yii当您转到URL
/uploads/Tutorial.pdf
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false,
'rules'=>array(
'uploads/<filename:[a-zA-Z]+\.pdf>' => 'upload/viewPdf', // actionViewPdf Method in UploadController class
// ... all your other rules
),
),
那么你应该可以使用
echo CHtml::link(
'pdf',
Yii::app()->createUrl('/uploads/viewPdf', array('filename' => 'Tutorial')) ,
array('class'=>'button','target'=>'_blank'));
希望这会有帮助。好吧。。。。您确定服务器上有uploads文件夹,并且该文件夹位于链接友好的位置吗?Yii不会通过index.php文件传递所有信息,如果文件已经存在,那么它只会按原样使用它。这就是为什么您可以访问图像或css文件夹中的文件,而无需控制器 如果您使用的是正常的Yii结构,那么您应该在受保护的文件夹旁边放置“uploads”文件夹 如果您的上传文件夹不在可通过web访问的位置,请使用JamesG告诉您的方法。我唯一想做的更改是更改模式,它只匹配字母,您的名称中可能还有其他字符。不要在链接中添加“.pdf”:
Yii::app()->createUrl('/uploads/Tutorial')
在PHP中,您可以这样打印pdf(必须在actionTutorial中):
本教程是一个简单的html页面,应该呈现到pdf中
您可以找到mpdf Yii扩展名的doku错误404仅表示您没有引用有效的url。检查呈现页面中链接的url。localhost/application/index.php/viewPdf/filename/Tutorial是该链接,并且显示了相同的错误。我已将actionViewPDF包含在我的控制器中,并将其添加到“允许”规则中。我尝试了JamesJ访问方法,但仍面临相同的错误。因此,您的上载文件夹无法通过web访问?请首先回答以下问题,您的文件夹是否可以通过web访问。
Yii::app()->createUrl('/uploads/Tutorial')
$mPDF = Yii::app()->ePdf->mpdf();
$mPDF->WriteHTML($this->render('tutorial', array(), true));
$mPDF->Output();