Вот решение, которое работает правильно, но это не более чем исправление вашего собственного кода.Проблемы, которые я изложил, были исправлены, и это все
#!/usr/bin/perl
use strict;
use warnings 'all';
my $color1 = 'black';
my $color2 = 'darkgreen';
my $color3 = 'black';
my $color4 = 'red';
my $color5 = 'lime';
my $size = 6;
my $title = 'This is the heading';
my $fstyle = 'Helvetica';
print "Content-type: text/html\n\n";
print "<body bgcolor = $color3>\n";
print "<font color = $color5 face=$fstyle size=$size>$title</font><br />\n";
{
print "<html>\n";
print "<body>\n";
print qq{<table
style="table-layout:fixed; width=705; height=110; text=$color4"
border=2
bordercolor="$color1"
bgcolor="$color2">\n};
print "<tr>\n";
print qq{<th style="width:705" >Column1</th>};
print qq{<th style="width:705" >Column2</th>};
print "</tr>\n";
open my $fh, '<', 'textfile.txt' or die $!;
while ( <$fh> ) {
my @line = split;
print "<tr>\n";
for ( @line ) {
if ( /reject/i ) {
print qq{<td style=width:705 bgcolor=red>$_</td>};
}
else {
print "<td style=width:705>$_</td>"
}
}
print "</tr>\n";
}
print "</table>\n";
print "</body>\n";
print "</html>\n";
}
output
Content-type: text/html
<body bgcolor = black>
<font color = lime face=Helvetica size=6>This is the heading</font><br />
<html>
<body>
<table
style="table-layout:fixed; width=705; height=110; text=red"
border=2
bordercolor="black"
bgcolor="darkgreen">
<tr>
<th style="width:705" >Column1</th><th style="width:705" >Column2</th></tr>
<tr>
<td style=width:705>Column1</td><td style=width:705>Column2</td></tr>
<tr>
<td style=width:705>Accept</td><td style=width:705 bgcolor=red>Reject</td></tr>
<tr>
<td style=width:705>Accept</td><td style=width:705 bgcolor=red>Reject</td></tr>
<tr>
<td style=width:705>Accept</td><td style=width:705 bgcolor=red>Reject</td></tr>
</table>
</body>
</html>
Внешний вид
![This is the result](https://i.stack.imgur.com/erC9S.png)
Iвсе еще есть опасения по поводу вашего подхода.Взломать программу из кусочков чужой работы, которую вы не понимаете, - это рецепт неудачи.Если у вас нет склонности исследовать и изучать детали, достаточные для того, чтобы выжить самостоятельно, тогда вы выбрали неправильную работу
Я думаю, вам следует использовать систему шаблонов, такую как Template::Toolkit
вместо печати HTML
из вашей программы Perl
Цвета должны быть изменены с использованием CSS и соответствующих class
, а не печать атрибутов HTML в строке
Вы, кажется, думаете, что случайный и приблизительный подход - это хорошо, или, по крайней мере, вы не хотите предлагать больше, но хотя это может быть верным для других профессий, разработка программного обеспечения требует многобольше заботы и точности