我创建了一个根据生成日期生成新列的表。
我能够创建它,但问题是表格如下:
我认为问题出在我的预告中,但我无法确定问题所在。
以下是我的代码片段:
<table class="table table-bordered">
<tr>
<th></th>
<th colspan="3"><?php
$from = strtotime($_POST['from']);
$to = strtotime($_POST['to']);
if($list_timelist):
do
{
$current = date("Y-m-d", $from);
$from = strtotime("+1 day", $from);
$exist = 0;
$date1 = "";
$date2 ="";
?>
<?php
endforeach;
if($exist==1)
{
$date2 = date("Y-m-d", strtotime($list->time_stamp));
echo "
<tr>
<th></th>
<th colspan='3' class='date'>$date1</th>
<tr>";
echo "
<tr>
<td></td>
<td>UT</td>
<td>LEAVE/ABSENT</td>
<td>OT</td>";
echo "</tr>";
}
else
{
$a=date("Y-m-d, D", strtotime($current));
$b=date("Y-m-d", strtotime($current));
echo "
<tr>
<th colspan='3' class='date'>".$a."</th>
<tr>";
echo"
<tr>
<td></td>
<td>UT</td>
<td>LEAVE/ABSENT</td>
<td>OT</td>
</tr>";
}
} while ($from <= $to);
else:
endif;
?></th>
<th colspan="3">Total</th>
<th rowspan="2">Filed OT</th>
<th rowspan="2">OT(previous cut-off)</th>
<th rowspan="2">Total OT for payment</th>
</tr>
<tr>
<td></td>
<td>UT</td>
<td>LEAVE/ABSENT</td>
<td>OT</td>
<td>UT<br>(hrs)</td>
<td>LEAVE/ABSENT<br>(days)</td>
<td>OT / Excess Time<br>(hrs)</td>
</tr>
<tr>
</table>
感谢您的帮助!
答案 0 :(得分:1)
了解这段代码:
<table class="table table-bordered" border='1'>
<tr>
<th></th>
<?php
$from = strtotime("2014-10-10");
$to = strtotime("2014-10-12");
//$interval = date_diff($from, $to);
//$diff = $interval->format('%a');
//echo $diff;
do
{
$current = date("Y-m-d", $from);
$from = strtotime("+1 day", $from);
$exist = 0;
$date1 = "";
$date2 ="";
$a=date("Y-m-d, D", strtotime($current));
$b=date("Y-m-d", strtotime($current));
echo "
<th colspan='3' class='date'>".$a."</th>
";
}
while ($from <= $to);
?>
<th colspan="3">Total</th>
<th rowspan="2">Filed OT</th>
<th rowspan="2">OT(previous cut-off)</th>
<th rowspan="2">Total OT for payment</th>
</tr>
<tr>
<th></th>
<?php
$from = strtotime("2014-10-10");
$to = strtotime("2014-10-12");
do
{
$current = date("Y-m-d", $from);
$from = strtotime("+1 day", $from);
$exist = 0;
$date1 = "";
$date2 ="";
$a=date("Y-m-d, D", strtotime($current));
$b=date("Y-m-d", strtotime($current));
echo"
<td>UT</td>
<td>LEAVE/ABSENT</td>
<td>OT</td>
";
}
while ($from <= $to);
?>
</tr>
</table>
您已在<TR>
元素内生成<TH>
。它会导致列嵌套。