【问题标题】:Load image from HTML form to display in PDF with PHP (FPDF)从 HTML 表单加载图像以使用 PHP (FPDF) 以 PDF 格式显示
【发布时间】:2021-06-24 06:08:31
【问题描述】:

我想创建一个 HTML 表单,用户可以使用 PHP 中的 FPDF 库上传他想要在 PDF 中显示的图片。

我尝试了以下最小代码 - (如果我不评论 $pdf->Image(...) 行,它会崩溃)。有了这个,我看到我检索了文件的tmp_name 名称,但是我不知道如何使用它在pdf中显示图片...

我做错了什么?有人可以帮忙吗? (声明:我是 html/php 的新手)

任何帮助将不胜感激:-)

img_form2.php 文件看起来像:

<?php

$p1_col2_logo1_path = $_FILES['p1_col2_logo1']['tmp_name'];

$c = 7.5;
$b = 3;
$o = 2.1;

require('fpdf/fpdf.php');
define('FPDF_FONTPATH', 'fpdf/font/');

$pdf = new FPDF();
$pdf->SetAutoPageBreak(false);
$pdf->AddPage();
$pdf->SetFont('Helvetica','',10);

$stdx = 6 + $c;

$pdf->SetXY($stdx, 40 + $c);
$pdf->SetFillColor(255, 255, 255);
$pdf->Cell(80, 6.5, $p1_col2_logo1_path, 0, 2); 
$pdf->SetXY($stdx, 40*3 + $c);

$width=40;
$height=40;
//$pdf->Image($p1_col2_logo1_path, 190 + $c - $width, 22 + $c - $height, $width, $height); ///? what file path should be given to Image(...) ?
$pdf->Output(); 
?>

img_form2.html 文件看起来像:

 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <TITLE>
 </TITLE>
 </HEAD>
<BODY>
<form action="img_form2.php" enctype="multipart/form-data" method="post">
  <input type="file" name="p1_col2_logo1" />
    <input type="submit" value="Send"><input type="reset" value="Clear">
</form>
</BODY>
</HTML> 

【问题讨论】:

  • 定义崩溃,错误是什么?

标签: php html forms pdf fpdf


【解决方案1】:

我有同样的问题,所以我想我会回答这个问题,即使它已经几个月了。 $_FILES['p1_col2_logo1']['tmp_name'] 没有扩展名,因此 FPDF 不能将其用作图像。所以我只是采取了简单的方法,先保存图像,然后从该文件位置将其插入我的 PDF,然后从上传文件夹中删除图像。基本上:

$uploadpath = "/opt/bitnami/php/tmp/";  //my php upload path
$image1 = $uploadpath.basename($_FILES["p1_col2_logo1"]["name"]);
move_uploaded_file($_FILES["p1_col2_logo1"]["tmp_name"], $image1)
$pdf->Image($image1,$Xoffset,$Yoffset,$image1width,$image1height);
unlink($image1);

当然,我添加了文件大小检查,以确保它是.jpg.png.gif(FPDF 只能使用这些图像文件类型),然后确保它正确保存等。上传路径设置在php.ini

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-27
    • 2014-04-07
    • 2016-04-08
    • 2011-09-23
    • 2011-04-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多