Php 基本css样式(如边框底部)不会影响动态创建的表
我正在从MYSQL读取一个表数据,并以html格式编写它以生成PDF(使用TCPDF库)。但在生成的PDF中,只有一些内联html CSS受到影响,包括(颜色、宽度、高度),但其他CSS,如border Bottom(我最需要的)或所有其他CSS被库忽略Php 基本css样式(如边框底部)不会影响动态创建的表,php,html,css,tcpdf,Php,Html,Css,Tcpdf,我正在从MYSQL读取一个表数据,并以html格式编写它以生成PDF(使用TCPDF库)。但在生成的PDF中,只有一些内联html CSS受到影响,包括(颜色、宽度、高度),但其他CSS,如border Bottom(我最需要的)或所有其他CSS被库忽略 $bookings_table_Result = mysql_query($bookings_table_query); $tbl_header = '<table style=\"width:900px; border: 1px sol
$bookings_table_Result = mysql_query($bookings_table_query);
$tbl_header = '<table style=\"width:900px; border: 1px solid black; padding:0px;\">';
$tbl_footer = '</table>';
$tbl = '';
while($row = mysql_fetch_array($bookings_table_Result)){
$checkin = $row["checkin"];
$checkout = $row["checkout"];
$nights = $row["nights"];
$guest = $row["guest"];
$country = $row["country"];
$guestcount = $row["guestcount"];
$amount = $row["amount"];
$tbl .= '<tr >
<td style="border-bottom: solid 1px Black; width: 80px;">'.$checkin.'</td>
<td style="border: 1px solid #000000; width: 80px;">'.$checkout.'</td>
<td style="border: 1px solid #000000; width: 20px;">'.$nights.'</td>
<td style="border: 1px solid #000000; width: 200px;">'.$guest.'</td>
<td style="border: 1px solid #000000; width: 150px;">'.$country.'</td>
<td style="border: 1px solid #000000; width: 40px;">'.$guestcount.'</td>
<td style="border: 1px solid red; width: 80px; color: blue;">'.$amount.'</td>
</tr>';
};
$tbl .= '</table>';
$pdf->writeHTML($tbl, true, false, true, false, '');
$bookings\u table\u Result=mysql\u query($bookings\u table\u query);
$tbl_标题=“”;
$tbl_页脚=“”;
$tbl='';
while($row=mysql\u fetch\u数组($bookings\u table\u Result)){
$checkin=$row[“checkin”];
$checkout=$row[“checkout”];
$nights=$row[“nights”];
$guest=$row[“guest”];
$country=$row[“country”];
$guestcount=$row[“guestcount”];
$amount=$row[“amount”];
$tbl='
“.$checkin”
“.$checkout。”
“.$nights。”
“.$guest。”
“.$country。”
“.$guestcount。”
“.$amount。”
';
};
$tbl.='';
$pdf->writeHTML($tbl,真,假,真,假,”);
我上传了结果PDF的图片
从外观上看,您没有生成有效的html表格:您似乎没有将表格标题添加到
$tbl
变量中
如果这不是问题所在(您没有显示表的输出位置…),您最好发布生成的html而不是php,因为从外观上看,这似乎与
html
和css
比php
更相关,您没有生成有效的html表格:您似乎没有将表格标题添加到$tbl
变量中
如果这不是问题(您没有显示表的输出位置…),您最好发布生成的html,而不是php,因为这似乎与
html
和css
比php
更相关,您使用的边框底部行中存在打字错误,请参阅:
... '<table style="width: 900px; border-bottom:1pt solid black;" border: 1px; cellspacing="0">';
This is out of the style attribute!! ------^
…”;
这超出了样式属性------^
您在使用的边框底部的行中有一个打字错误,请参阅:
... '<table style="width: 900px; border-bottom:1pt solid black;" border: 1px; cellspacing="0">';
This is out of the style attribute!! ------^
…”;
这超出了样式属性------^
当您使用php在html中回显样式时,请尝试将代码更改为以下内容:
$tbl .= '<tr >
<td style=\"border: 1px solid #000000; width: 80px;\">'.$checkin.'</td>
<td style=\"border: 1px solid #000000; width: 80px;\">'.$checkout.'</td>
<td style=\"border: 1px solid #000000; width: 20px;\">'.$nights.'</td>
<td style=\"border: 1px solid #000000; width: 200px;\">'.$guest.'</td>
<td style=\"border: 1px solid #000000; width: 150px;\">'.$country.'</td>
<td style=\"border: 1px solid #000000; width: 40px;\">'.$guestcount.'</td>
<td style=\"border: 1px solid #000000; width: 80px;\">'.$amount.'</td>
</tr>';
$tbl.='
“.$checkin”
“.$checkout。”
“.$nights。”
“.$guest。”
“.$country。”
“.$guestcount。”
“.$amount。”
';
当使用单引号''
时,您需要包含反斜杠,以告知服务器在回显表格时保留''
当我使用php从mysql数据库回显我的表时,我遇到了类似的问题
杰罗恩说得很好。如果要创建有效的html表,需要添加起始表声明
您似乎还在样式定义之外设置表的样式
改变
$tbl_头=”代码>
到
$tbl_头=”
但是,底部边框中可能没有点,而整个表中可能没有点,因为上一个边框声明将覆盖上一个边框声明 使用php在html中回送样式时,请尝试将代码更改为以下内容:
$tbl .= '<tr >
<td style=\"border: 1px solid #000000; width: 80px;\">'.$checkin.'</td>
<td style=\"border: 1px solid #000000; width: 80px;\">'.$checkout.'</td>
<td style=\"border: 1px solid #000000; width: 20px;\">'.$nights.'</td>
<td style=\"border: 1px solid #000000; width: 200px;\">'.$guest.'</td>
<td style=\"border: 1px solid #000000; width: 150px;\">'.$country.'</td>
<td style=\"border: 1px solid #000000; width: 40px;\">'.$guestcount.'</td>
<td style=\"border: 1px solid #000000; width: 80px;\">'.$amount.'</td>
</tr>';
$tbl.='
“.$checkin”
“.$checkout。”
“.$nights。”
“.$guest。”
“.$country。”
“.$guestcount。”
“.$amount。”
';
当使用单引号''
时,您需要包含反斜杠,以告知服务器在回显表格时保留''
当我使用php从mysql数据库回显我的表时,我遇到了类似的问题
杰罗恩说得很好。如果要创建有效的html表,需要添加起始表声明
您似乎还在样式定义之外设置表的样式
改变
$tbl_头=”代码>
到
$tbl_头=”
但是,底部边框中可能没有点,而整个表中可能没有点,因为上一个边框声明将覆盖上一个边框声明 首先,你有双引号,其中单引号应该使用。将您的代码与我转换的这一行进行比较$tbl_header=“”
和。$checkin.
(已测试)。首先,应该使用双引号,其中应使用单引号。将您的代码与我转换的这一行进行比较$tbl_header=“”
和。$checkin.
(已测试)。关于需要包含反斜杠以在单引号中转义双引号的说法是错误的。只有在双引号内使用双引号或单引号内使用单引号时,才需要它们。如果需要在单引号内包含反斜杠以转义双引号,则不正确。只有在双引号中使用双引号或单引号中使用单引号时,才需要它们