Post Laravel 4 wkHtmlToPdf路线,发布和获取问题
对, 我已安装wkhtmltopdf()的服务提供商 当我加上Post Laravel 4 wkHtmlToPdf路线,发布和获取问题,post,laravel,laravel-routing,Post,Laravel,Laravel Routing,对, 我已安装wkhtmltopdf()的服务提供商 当我加上 Route::get('/', function() { $pdf = PDF::make(); $pdf->addPage('<html><head></head><body><b>Hello World</b></body></html>'); $pdf->send(); }); routes.p
Route::get('/', function() {
$pdf = PDF::make();
$pdf->addPage('<html><head></head><body><b>Hello World</b></body></html>');
$pdf->send();
});
routes.php:
<form id="convert" action="{{{ URL::to('') }}}/pdf" method="post">
<input type="hidden" name="body" id="body">
<input type="submit" class="btn btn-success pdf" value="Done? Convert to PDF!">
</form>
$('form#convert').submit(function(){
$("input#body").val($("#preview").html());
});
Route::post('pdf', 'PdfController@index');
<?php
class PdfController extends BaseController {
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index()
{
$data = Input::get('body');
$pdf = PDF::make();
$pdf->addPage($data);
$pdf->send('test.pdf');
if(!$pdf->send())
return $pdf->getError();
}
}
最后是我的控制器(PdfController):
<form id="convert" action="{{{ URL::to('') }}}/pdf" method="post">
<input type="hidden" name="body" id="body">
<input type="submit" class="btn btn-success pdf" value="Done? Convert to PDF!">
</form>
$('form#convert').submit(function(){
$("input#body").val($("#preview").html());
});
Route::post('pdf', 'PdfController@index');
<?php
class PdfController extends BaseController {
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index()
{
$data = Input::get('body');
$pdf = PDF::make();
$pdf->addPage($data);
$pdf->send('test.pdf');
if(!$pdf->send())
return $pdf->getError();
}
}
因此,在控制器中使用它也是一个问题。
有什么线索吗?根据您提供的,它说您需要在composer.json
文件中包含二进制文件才能使其正常工作:
注意(还必须包括wkhtmltopdf二进制文件) 32位系统 64位系统 如果需要,您可以包括这两个
听起来Laravel试图执行64位二进制文件,但找不到它。确保:
- 您已将其放置在正确的文件夹中
- 它使用
设置了执行权限chmod
并以
因为我对whtml2pdf的输入是一个div的内容,所以我只需将这些html标记插入发送给控制器的输入值中,然后瞧。包含了二进制文件,当我的代码在routes.php中时,我可以找到它们,但不是像我在原始帖子中提到的那样在控制器中。我还手动导航到二进制文件以进行双重检查。是否确实正在运行控制器操作?在第二个错误中,它似乎正在尝试加载
error:Failed loading pagehttp://test
。尝试使用URL::action('PdfController@index)
格式中的操作
参数。