我从数据库中获取数据.它有4行6列.我想在HTML表格中显示这个但是遇到了问题.我为6列制作了TH.但是,我在显示4行时遇到了问题.这是我到目前为止:
while (($f1, $t2, $n3, $k4, $d5, $e6) = $sth1->fetchrow_array)
{
push (@first, $f1);
push (@second, $t2);
push (@third, $n3);
push (@fourth, $k4);
push (@fifth, $d5);
push (@sixth, $e6);
}
Run Code Online (Sandbox Code Playgroud)
@ first,@ second ......等等都是数组
如果我这样做,则显示数据:
foreach (@first)
{
print "<td>$_</td>";
}
Run Code Online (Sandbox Code Playgroud)
这是垂直显示数据,但我想让它水平显示.
您还可以使用HTML :: Table.
use strict;
use warnings;
use HTML::Table;
my $table = HTML::Table->new(
-cols => 6,
-border => 1,
-padding => 1,
-head => [qw( f1 t2 n3 k4 d5 e6 )],
);
# do query here.
while ( my @row = $sth->fetchrow_array ) {
$table->addRow(@row);
}
$table->print;
Run Code Online (Sandbox Code Playgroud)
问题中的代码是使用Perl的DBI(数据库接口)编写的:
print "<table>\n";
while (($f1, $t2, $n3, $k4, $d5, $e6) = $sth1->fetchrow_array)
{
print " <tr>\n";
print " <td>$f1</td>\n";
print " <td>$t2</td>\n";
print " <td>$n3</td>\n";
print " <td>$k4</td>\n";
print " <td>$d5</td>\n";
print " <td>$e6</td>\n";
print " </tr>\n";
}
print "</table>\n";
Run Code Online (Sandbox Code Playgroud)
或者您可以将行读入数组,然后更简洁地打印数组:
print "<table>\n";
while (my(@row) = $sth1->fetchrow_array)
{
print " <tr>\n";
print " <td>$val</td>\n" foreach my $val (@row);
print " </tr>\n";
}
print "</table>\n";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24905 次 |
| 最近记录: |