How Do I Read A Text File By Putting Its Data In A Table Using Cgi In Perl? January 26, 2024 Post a Comment The CGI to read the data from merch.txt works but how can I put this in a table? HTML File: Solution 1: Using your raw embedded HTML approach, it's not hard. But it is incredibly ugly.print <<END_OF_HTML; <html> <body> <table> <tr><th>Sku</th><th>Cust</th></tr> END_OF_HTMLfor (@orders) { my ($sku, $cust) = split /\|/; print'<tr><td>', CGI::escapeHTML($sku), '</td>', '<td>', CGI::escapeHTML($cust), '</td></tr>'; } print <<END_OF_HTML; </table> </body> </html> END_OF_HTMLCopyBut mixing raw HTML with your Perl code is a terrible idea. Please use a templating engine instead. I recommend the Template Toolkit. Here's a simple CGI program using TT to do what you need.Baca JugaChecking For Alphanumeric Characters And Getting Input From Html FormSteps In Order To Pass Data From Html Form To Perl ScriptHow Do I Read A Text File By Putting Its Data In A Table Using CGI In Perl?#!/usr/bin/perluse strict; use warnings; use Template; use CGI qw[header]; my $tt = Template->new; # Best practice: three-arg open() and lexical filehandlesopenmy $ord_fh, '<', 'merch.txt'ordie $!; my @orders = <$ord_fh>; close $ord_fh; my @order_data = map { my ($sku, $cust) = split/\|/; { sku => $sku, cust => $cust } } @orders; print header; $tt->process('orders.tt', { orders => \@order_data }) or dir $tt->error; CopyAnd you'll need a template that looks something like this:<html> <head> <title>Orders</title> </head> <body> <h1>Orders</h1> <table> <tr><th>Sku</th><th>Cust</th></tr> [% FOREACH order IN orders -%] <tr><td>[% order.sku | html %]</td><td>[% order.cust | html %]</td></tr> [% END -%] </table> </body> </html> Copy Share You may like these postsHow Do I Read A Text File By Putting Its Data In A Table Using CGI In Perl? Post a Comment for "How Do I Read A Text File By Putting Its Data In A Table Using Cgi In Perl?"