将表单结果从联系表单 7 导出到 PDF (fPDF)

2023-12-09

我正在尝试将用户在 WordPress 中的联系表单 7 中输入的值通过 fpdf 导出为 PDF。 这就是我所设置的,我可以生成 PDF,但没有从表单动态生成的值。

函数.php

add_action( 'wpcf7_before_send_mail', 'save_application_form');
function save_application_form($cf7) {

/* GET EXTERNAL CLASSES */
require(TEMPLATEPATH.'/fpdf/fpdf.php');

$values = $cf7->posted_data;
echo $values['first-name'];


/* example code to generate the pdf */
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Times','B',16);
$pdf->Write(5,'first-name');
$pdf->SetFont('Arial','B',16);


$pdf->Output(TEMPLATEPATH.'/fpdf/pdf.pdf', 'F');

/* add  the pdf as attach to the email*/
$cf7->uploaded_files = array ( 'attachedfile' =>  TEMPLATEPATH.'/fpdf/pdf.pdf' );

如何从联系表 7 中提取内容? 现在,如果我按“发送”,我只会收到一个写有“名字”的 PDF。我尝试了多种组合,没有任何效果。

感谢您的帮助。

编辑:我已经弄清楚如何打印,但问题似乎是,我没有从联系表 7 中提取插入的内容。

$first_name = $cf7->posted_data["first-name"];
$var = "test"; 


/* example code to generate the pdf */
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Times','B',16);
$pdf->Write(5,  "My car is " . $var . "bl");
$pdf->SetFont('Arial','B',16);

所以 $first_name 不起作用,因为它是空的,我有什么想法可以纠正这个问题吗?因为如果我尝试使用 $var 它会起作用。


Kory 的上述解决方案非常有效。但是,它不适用于单选按钮。所有单选按钮仅在最终 PDF 上显示为“数组”。如何正确显示单选按钮选项?我正在使用的代码如下。谢谢!

add_action('wpcf7_before_send_mail', 'wpcf7_update_email_body');
function wpcf7_update_email_body($contact_form) {

$submission = WPCF7_Submission::get_instance();
if ( $submission ) {
/* DEFINE CONSTANT AND GET FPDF CLASSES */
define ('FPDF_PATH',get_stylesheet_directory().'/fpdf17/'); // MAKE SURE THIS POINTS TO THE DIRECTORY IN YOUR THEME FOLDER THAT HAS FPDF.PHP
require(FPDF_PATH.'fpdf.php');

$posted_data = $submission->get_posted_data();
// SAVE FORM FIELD DATA AS VARIABLES
$name = $posted_data["your-name"];
$name2 = $posted_data["your-name2"];
$email = $posted_data["your-email"];
$enhetsnr = $posted_data["number-363"];
$radio220 = $posted_data["radio-220"];
$radio221 = $posted_data["radio-221"];
$radio222 = $posted_data["radio-222"];
$radio223 = $posted_data["radio-223"];
$radio224 = $posted_data["radio-224"];
$radio225 = $posted_data["radio-225"];

$pdf = new FPDF('P','mm','A4');
$pdf->AddPage();
$pdf->SetFont('Times','',16);
$pdf->Write(5, $name . "\n\n" . $name2 . "\n\n" . $email . "\n\n" . $enhetsnr . "\n\n" . $radio220 . "\n\n" . $radio221 . "\n\n" . $radio222 . "\n\n" . $radio223 . "\n\n" . $radio224 . "\n\n" . $radio225);
$pdf->Output(FPDF_PATH.'tillval.pdf', 'F'); // OUTPUT THE NEW PDF INTO THE SAME DIRECTORY DEFINED ABOVE

}
}

add_filter( 'wpcf7_mail_components', 'mycustom_wpcf7_mail_components' );
function mycustom_wpcf7_mail_components($components){
if (empty($components['attachments'])) {
$components['attachments'] = array(FPDF_PATH .'tillval.pdf'); // ATTACH THE NEW PDF THAT WAS SAVED ABOVE
}
return $components;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将表单结果从联系表单 7 导出到 PDF (fPDF) 的相关文章

  • 使用 Dojo 富文本编辑器提交表单

    有人知道如何提交包含 Dojo 富文本编辑器的表单吗 我尝试将 name 属性添加到用 dojoType dijit Editor 装饰的元素中 但是 我在接收过程中没有看到任何 HTML 我已经检查了文档 但没有看到任何明确的示例 除了将
  • PHP - 如何获取主要 HTML 内容,例如 Firefox 中的阅读器模式

    在 android Firefox 应用程序和 safari iPad 中 我们只能通过 阅读器模式 阅读主要内容 阅读更多 http support mozilla org en US kb how enable reader mode
  • PHP WCF 集成

    是不是如果我想支持php客户端访问我的服务 我必须有一个基本的http端点 这是因为php仍然只支持soap 1 1吗 据我所知 自从我使用 PHP 以来已经两年了 情况仍然如此 如果客户端应用程序将使用 PHP 的内置 SoapClien
  • Xdebug V3 不会停止 VSCode 中的断点

    我正在尝试使用 VSCode 在 XAMPP 上进行调试 但没有成功 我知道有很多关于这个的问题 我已经尽了一切努力 但仍然行不通 我的 xdebug 扩展确实有一件奇怪的事情 我目前使用 PHP v7 4 12 和 Xdebug 版本 3
  • 分页显示所有其他页面上第 1 页的相同帖子

    我最近在创建即将发生的事件列表时得到了很多帮助 请参阅此处显示即将举行的活动 包括今天的活动 https stackoverflow com questions 17343615 showing upcoming events includ
  • 在哪里可以获得 PHP 5.3+ 的 runkit DLL 扩展?

    这是一个简单的问题 我在哪里可以获得 PHP 5 3 版本的 runkit 扩展 它的手册 http php net manual en book runkit php http php net manual en book runkit
  • docker 中的 php Curl 冲突 CURLOPT_FILE 和 CURLOPT_RETURNTRANSFER

    当我使用curl时CURLOPT FILE and CURLOPT RETURNTRANSFER选项 文件为空 没有任何curl错误 fp fopen saveTo w ch curl init fileUrl curl setopt ch
  • 如何在 Windows 上安装 Zend 框架

    安装 Zend Framework 就是这么简单 是的 对 好吧 我正在写一本初学者的书 有一件不太详细的事情是最重要的部分 安装该死的东西 浏览了几个小时的快速入门指南后 它只说 下载 Zend 添加包含目录 bla bla 然后就完成了
  • Nginx 502 网关错误。通过增加buffer来解决。为什么?

    我正在设置 LEMP 堆栈来运行 Drupal 我安装了 Nginx 和 PHP FastCGI Nginx 工作正常 但任何运行 PHP 的尝试都会出现错误 502 Bad Gateway 谷歌很快发现 nginx 502 错误网关 ht
  • 如何在codeigniter中将上传图片比例限制为16:9?

    这是我用来上传图像的代码 this gt load gt library upload ext pathinfo file name PATHINFO EXTENSION img name now ext imgConfig upload
  • 带倒计时的php循环

    假设我从 400 开始计数器 我将如何执行一个向后运行直到 0 的 foreach 循环 伪代码 i 400 foreach SOMETHING do stuff i for i 400 i gt 0 i do stuff 其他方法 i 4
  • 如何使用更新资源控制器 laravel 4?

    我有带有索引 编辑 更新方法的客户控制器 Route resource customer CustomerController 控制器方法更新 public function update id echo id 我的 HTML 表单
  • CodeIgniter:My_Lang 中的 get_instance

    我发现这个有用的国际化代码 http pastebin com SyKmPYTX http pastebin com SyKmPYTX 一切正常 除了我无法在此类中使用 CI 函数 我想从 DB 设置 languages 和 special
  • php - 解析html页面

    div divbox div p para1 p p para2 p p para3 p table class table tr td td tr table p para4 p p para5 p 有人可以告诉我如何解析这个 html
  • 雄辩的第一个 where 子句

    我想知道 Laravel 如何实现雄辩的语法 以便可以静态调用第一个 where 子句User where User where id 23 gt where email email gt first 他们有吗public static f
  • PHP 拒绝从 var_dump、print 等输出数据

    我目前正在运行 WAMP 服务器 并且在过去的 30 分钟内一直在尝试弄清楚我的项目如何以及为什么不会输出任何指定的 PHP 数据 起初我以为是因为我有一个 htaccess文件的output buffering被禁用 所以我删除了它 仍然
  • 使用 Vue 的多模式组件

    我在 Vue 中实现动态模式组件时遇到问题 A common approach I follow to display a set of data fetched from the db is I dump each of the rows
  • Laravel 搜索关系

    我有两个相关的模型 我正在尝试在产品中进行搜索 并且仅显示实际搜索结果 而不是找到该产品的类别的所有产品 我不想搜索任何类别 因为无论搜索什么或找到什么 类别都会始终显示 Example I have the following categ
  • USB 上的 Autorun.inf 可以让它运行 pdf 吗?

    我在网上做了一些研究 我想我只是在寻找构象 由于 Microsoft 如何在 Vista 及更高版本中对自动运行设置安全性 从 USB 自动运行不再起作用 正确的 看起来它仍然会显示运行 exe 的选项 但由于某些奇怪的原因我无法让它运行
  • PayPal 网关已拒绝请求。安全标头无效(#10002:安全错误 Magento

    在 magento 中增加 PayPal 预付款 我已填写 magento admin 中的所有凭据 但是当我进入前端并单击 pay pal 按钮时 它给出了 PayPal 网关已拒绝请求 安全标头无效 10002 安全错误 我用谷歌搜索了

随机推荐

  • 添加一个实例来引用另一个实例中的字段

    对不起 这个问题可能以不同的形式存在 但我确实到处搜索但没有看到它 我曾经使用过 C 并且习惯于指针 我在用 C 模拟代码替换我的逻辑时遇到问题 这是我的 C 代码 class Parent public Parent A get set
  • 如何在 Rails 中的 date_select 帮助器中设置默认日期

    我正在尝试在我的 Rails 应用程序 2 3 5 中设置出生日期助手 目前是这样 这会生成一组功能完美的日期字段 工作得很好 但是 它们默认为今天的日期 这对于出生日期字段来说并不理想 我不确定是什么 但除非您正在运行新生儿科 否则今天的
  • requirements.txt 中的安装时依赖项

    我正在使用 tox 准备 venv 并运行单元测试 我的应用程序需要 openopt 库 该库又导入numpy distutils core在其 setup py 中 无论我如何在我的requirements txt中订购numpy和ope
  • 分配给大R数据框[重复]

    这个问题在这里已经有答案了 在 R 中 我通过以下方式创建数据框 data lt data frame dummy rep dummy 10000 data number 0 data another 1 当我运行一个为数据框分配值的 fo
  • 如何在代码中设置colorAccent?

    我想在代码中更改我的应用程序的主题 所以我用谷歌搜索它 不幸的是 我找不到任何方法 在java代码中设置colorAccent 我不想像这样在 xml 中设置这个属性
  • Tkinter 和多线程

    我使用以下代码来检查 Tkinter 是否与多线程一起工作 但是下面的代码不起作用 Gui一运行就没有响应 谁能解释一下为什么它不起作用 from threading import Thread import tkinter as tk w
  • HashMap 应该是未排序的,但仍然根据键排序

    根据这些 http docs oracle com javase 6 docs api java util HashMap html HashMap LinkedHashMap 和 TreeMap 的区别 java初学者 如何在哈希图中对键
  • Pygame 显示无响应

    因此 我尝试为使用精灵进行 X 和 Y 运动的基本 2D Python 游戏创建基础 然而 尽管这里的代码试图screen fill and screen blit playerX 50 playerY 50 player pygame i
  • 帆蓝图生命周期

    我需要向结果添加一些额外的数据find蓝图 我找到了这个解决方案 module exports find function req res return sails hooks blueprints middleware find req
  • 在 Visual Studio 中引用 system.management.automation.dll

    我开始研究 PowerShell 模型和管理单元开发 我注意到的第一件事是引用 System management automation dll 然而 在 Visual Studio 中 NET 选项卡没有该程序集 也无法浏览到 C win
  • 如何刷新Google地图中的坐标?

    我可以在点击刷新按钮时刷新谷歌地图 但它显示的是旧坐标 在某些区域 它显示矩形图像 其中有十字图像 错误在哪里或者我必须对其进行哪些修改 这是我的代码 public class GmapActivity extends MapActivit
  • Julia:为什么共享内存多线程没有给我带来加速?

    我想在 Julia 中使用共享内存多线程 正如 Threads threads 宏所做的那样 我可以使用 ccall jl threading run 来执行此操作 虽然我的代码现在并行运行 但我没有获得预期的加速 以下代码旨在作为我正在采
  • 是否可以保证使用 @PostConstruct 注解的方法先于同一 bean 中使用 @Scheduled 的方法执行?

    假设我正在定义一个缓存 bean 它将在应用程序启动时初始化 并以固定的时间间隔刷新 如下所示 Component public class Cache PostConstruct public void initializeCache S
  • 如何检查没有。使用 MYSQLI_STMT_PREPARE 和 MYSQLI_FETCH_ARRAY 时返回的行数?

    我以为我可以用MYSQLI STMT NUM ROWS and MYSQLI STMT STORE RESULT检查是否有 返回的行数 参见注释行 1 2 3 但在下面的上下文中似乎并非如此 此代码确实有效 没有注释行 但我试图添加额外的检
  • python 按周或月分割 pandas 数据框,并根据这些 sp 对数据进行分组

    DateOccurred CostCentre TimeDifference 03 09 2012 2073 28138 03 09 2012 6078 34844 03 09 2012 8273 31215 03 09 2012 8367
  • Pandas 在读取 CSV 之前忽略前几行

    我正在使用 Pandas 库和 Python 我有一个 Excel 文件 在 Excel 工作表的顶部有一些标题信息 我不需要这些信息来提取数据 但是 标题信息可能需要更长的行 因此无法预测它有多长 所以 我的数据提取应该从 ID 的地方开
  • 从基础模块调用动态特征代码

    我试图实现一个动态功能 从我的基本模块中我应该调用该功能中的一些方法 但它只能从该功能中调用基本方法 有什么方法可以使功能代码从基本模块访问 我了解未安装功能时会发生什么 我已经使用默认的谷歌文档实现了它 所以我没有不同的代码或实现 今天没
  • 在r中使用read_csv导入多个csv文件

    我有一个包含多个 csv 文件名称的向量 library readr data lt c categories csv customers csv employees csv employee territories csv order d
  • InternalsVisibleTo 属性不起作用

    我正在尝试使用InternalsVisibleToassembly 属性 使 NET 类库中的内部类对我的单元测试项目可见 由于某种原因 我不断收到一条错误消息 MyClassName 由于其保护级别而无法访问 两个程序集都已签名 并且我在
  • 将表单结果从联系表单 7 导出到 PDF (fPDF)

    我正在尝试将用户在 WordPress 中的联系表单 7 中输入的值通过 fpdf 导出为 PDF 这就是我所设置的 我可以生成 PDF 但没有从表单动态生成的值 函数 php add action wpcf7 before send ma