Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 某些数据已输出,无法发送PDF文件_Php_Pdf Form - Fatal编程技术网

Php 某些数据已输出,无法发送PDF文件

Php 某些数据已输出,无法发送PDF文件,php,pdf-form,Php,Pdf Form,我使用fpdf在php中创建pdf,运行时出现以下错误: Notice: Undefined index: id in C:\xampp1\htdocs\arvin2\public\pdf2\id.php on line 3 FPDF error: Some data has already been output, can't send PDF file 这是我的php代码报告。php: <form action="http://localhost/pdf2/id.php" metho

我使用fpdf在php中创建pdf,运行时出现以下错误:

Notice: Undefined index: id in C:\xampp1\htdocs\arvin2\public\pdf2\id.php on line 3
FPDF error: Some data has already been output, can't send PDF file
这是我的php代码报告。php:

<form action="http://localhost/pdf2/id.php" method="post" target="_blank">
<input type="text" name="id">
<input type="submit" name="submitpdf" value="Print"/>
</form>
错误显示:

Parse error: syntax error, unexpected '$pdf' (T_VARIABLE) in C:\xampp1\htdocs\arvin2\public\pdf2\id.php on line 34

输出应为pdf格式中打印的文本字段中输入的身份证号码的所有信息

将if设置在代码中。即

if(isset($_POST['submitpdf']))
{
//$id=$_POST['id'];
//your code goes here
}
这是为了确保代码只能在读取表单数据后运行

编辑:

我猜您的新错误来自select字符串

$pdf->Table('select leave_id, fullname, type_of_leave from application where     id_no="$_POST[id]"',$prop);
将其更改为:

$pdf->Table("select leave_id, fullname, type_of_leave from application where id_no=".$_POST[id],$prop);

在你的代码上加上if。即

if(isset($_POST['submitpdf']))
{
//$id=$_POST['id'];
//your code goes here
}
这是为了确保代码只能在读取表单数据后运行

编辑:

我猜您的新错误来自select字符串

$pdf->Table('select leave_id, fullname, type_of_leave from application where     id_no="$_POST[id]"',$prop);
将其更改为:

$pdf->Table("select leave_id, fullname, type_of_leave from application where id_no=".$_POST[id],$prop);
错误:某些数据已输出,无法发送PDF文件

您可以使用两行代码来解决此问题

你应该写在这页的顶部 ob_开始

在PDF输出行$PDF->Output之前;添加新行 ob_end_冲洗

$pdf->输出

我想你可以解决这个问题,享受更多

谢谢

萨拉赫丁·汗医学博士

错误:某些数据已输出,无法发送PDF文件

您可以使用两行代码来解决此问题

你应该写在这页的顶部 ob_开始

在PDF输出行$PDF->Output之前;添加新行 ob_end_冲洗

$pdf->输出

我想你可以解决这个问题,享受更多

谢谢

萨拉赫丁·汗医学博士


我也犯了同样的错误

Data has already been sent to output, unable to output PDF file
这意味着在使用mPDF创建pdf之前,一些数据存储在缓冲区中,然后发送到浏览器。因此,它无法创建PDF

就这么做。。在为pdf准备数据时,在页面的第一行添加php内置函数

op_start();
在调用mPDF之前,在mPDF代码之前添加php内置函数

ob_end_flush();

require_once __DIR__ . '/vendor/autoload.php';

$mpdf = new \Mpdf\Mpdf();
$mpdf->WriteHTML($html);
$mpdf->Output();

因此,它将在处理mPDF之前清除所有缓冲区输出。

我得到了相同的错误

Data has already been sent to output, unable to output PDF file
这意味着在使用mPDF创建pdf之前,一些数据存储在缓冲区中,然后发送到浏览器。因此,它无法创建PDF

就这么做。。在为pdf准备数据时,在页面的第一行添加php内置函数

op_start();
在调用mPDF之前,在mPDF代码之前添加php内置函数

ob_end_flush();

require_once __DIR__ . '/vendor/autoload.php';

$mpdf = new \Mpdf\Mpdf();
$mpdf->WriteHTML($html);
$mpdf->Output();

因此,它将在处理mPDF之前清除所有缓冲区输出。

您应该在要以pdf格式输出的数据之前使用

ob_start();
然后使用ob_end_clean

ob_end_clean();
$pdf->Output(time().'.pdf', 'D')

您应该在要以pdf格式输出的数据之前使用

ob_start();
然后使用ob_end_clean

ob_end_clean();
$pdf->Output(time().'.pdf', 'D')


对于一些已经输出的数据,您应该确保没有任何额外的空白?代码周围的字符。对于未定义的索引,您的id表单字段似乎始终保持为空。请注意SQL注入。额外的输出是错误消息,因此通过删除id问题,另一个也会成功。没有空格,先生。@AndréDaniel是的,它始终保持为空。我如何解决此问题?对于已输出的某些数据,你应该确保没有多余的空格?代码周围的字符。对于未定义的索引,您的id表单字段似乎始终保持为空。请注意SQL注入。额外的输出是错误消息,因此通过删除id问题,另一个也将成功。没有空格,先生。@AndréDaniel是的,它始终保持为空。我如何修复它?解析错误:语法错误,意外的T_封装的_和_空格,在第29行的C:\xampp1\htdocs\arvin2\public\pdf2\id.php中需要标识符T_字符串或变量T_变量或数字T_NUM_字符串。它们不在同一个文件中。现在它显示:解析错误:语法错误,第30行的C:\xampp1\htdocs\arvin2\public\pdf2\id.php中出现意外的“$pdf”T_变量。请更新您的代码和上面发布的问题,好吗?我无法想象为什么它会给你一个错误。检查分号和括号,请尝试进行必要的更改。就像if isset。以及select的修改字符串。看看能不能用。然后再次更新您的问题:语法错误、意外的T_封装的_和_空格、C:\xampp1\htdocs\arvin2\public\pdf2\id.php第29行中的标识符T_字符串或变量T_变量或数字T_NUM_字符串现在显示为:Parse error:syntax error,第30行的C:\xampp1\htdocs\arvin2\public\pdf2\id.php中出现意外的“$pdf”T_变量。请更新您的代码和上面发布的问题,好吗?我无法想象为什么它会给你一个错误。检查分号和括号,请尝试进行必要的更改。就像if isset。以及select的修改字符串。看看能不能用。然后再次更新您的问题