【问题标题】:How to use html form data for fpdf form creation如何使用 html 表单数据创建 fpdf 表单
【发布时间】:2011-10-13 06:01:58
【问题描述】:

我正在尝试使用输入到 html 表单中的数据创建 pdf 电子邮件。我不知道如何使用 mysql 数据库或 html 表单中的数据使用 fpdf 创建 pdf 并通过电子邮件发送。我即将完成我一直在做的这个项目,需要帮助来完成交易要做的是使用 php 或使用我的 linux 网络服务器以 pdf 格式通过电子邮件发送此表单。拜托我也很想知道这一点。在过去的几周里,我学到了很多关于 html、php、mysql 和 javascript 的知识,我开始这个项目是为了好玩,现在人们想要它。对不起。并感谢大家为教我这些信息所提供的所有帮助。好的继承人的代码。

  <!DOCTYPE html>
  <html>
  <head>
 <?php
 $intro = mysql_real_escape_string($_POST['intro']);
 $hostname ="localhost";
 $db_user = "someuser";
 $db_password = "somepassword";
 $database = "form_something";
 $db_table = "FORM";
 $db = mysql_connect ($hostname, $db_user, $db_password);
 mysql_select_db($database,$db);
 ?>
  <title><h2>this is my form</h2><title>
  <?php
  if (isset($_REQUEST['Submit'])) { 
  # THIS CODE TELLS MYSQL TO INSERT THE DATA FROM THE FORM INTO MY MYSQL TABLE 
  $sql = "INSERT INTO $db_table(information) values ('".mysql_real_escape_string(stripslashes($_REQUEST['information']))."')";
  if($result = mysql_query($sql ,$db)) { 
  echo <h1>Thank you</h1>information has been entered into our database<br><img   src="http://someimage.com/here/is/the/image.jpg"';
 {
 p
 } else 
 { 
 echo "ERROR: ".mysql_error(); 
 }
 } else 
 {
 ?>
  ?>
  </head>
  <form action="pdf.php">
  <td colspan="2">type your information here<input type="text" name="information">
  <input type="submit" name="Submit" value="Submit">
  </body>
  </form>
  </html>

基本的 fpdf 页面 pdf.php 看起来像这样

 <?php
require('fpdf.php');

class PDF extends FPDF
 {
 // Page header
function Header()
{
// Logo
$this->Image('logo.png',140,6,60);
// Arial bold 15
$this->SetFont('Arial','B',15);
// Move to the right
$this->Cell(60);
 // Title
$this->Cell(80,10,' Form',1,0,'C');
// Line break
$this->Ln(20);
}

function Footer()
{
// Position at 1.5 cm from bottom
$this->SetY(-15);
// Arial italic 8
$this->SetFont('Arial','I',8);
// Page number
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}

$pdf = new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
for($i=1;$i<=40;$i++)
$pdf->Cell(0,10,'Printing line number '.$i,0,1);
$pdf->Output();
?>

【问题讨论】:

  • 一次一件事。首先确保浏览器发布正确的参数,然后让 php 正确使用这些参数。把所有的代码都扔在这里是没有意义的。

标签: php mysql html email fpdf


【解决方案1】:

我发现将 HTML 表单与 FPDF 链接起来非常直观。用 HTML 制作表单,在此示例中,我将创建一个文本字段和一个选项菜单。请注意,我使用标签 action="to_pdf.php" 创建表单,它将表单值与 php 链接。

<form action="to_pdf.php" method="POST">
    <p>Name</p>
    <input type="text" name="name">

    <p>Priority</p>
    <select name="priority" size="1">
        <option value="Low">Low</option>
        <option value="Normal">Normal</option>
        <option value="High">High</option>
        <option value="Emergency">Emergency</option>
    </select>

    <input type="submit" value="Send"><input type="reset" value="Clear">
</form>

然后将表单值导入到您的 php 文件中,我们已经在 HTML 中声明过的那个,to_pdf.php

<?php

$name = $_POST['name'];
$priority = $_POST['priority'];

require('fpdf.php');

$pdf = new FPDF();
$pdf->AddPage();

$pdf->SetFont('Arial','B',16);

$pdf->MultiCell(40,10,$name);
$pdf->MultiCell(40,10,$priority);

$pdf->Output(); 

?>

之后,您只需确保在您指定的路径中有fpdf.php 文件。请记住在 Web 服务器或 localhost 上运行测试,这样 php 文件才能真正运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-10
    • 2011-06-30
    • 1970-01-01
    • 2017-07-12
    • 2011-07-27
    • 1970-01-01
    • 2014-11-21
    • 1970-01-01
    相关资源
    最近更新 更多