syu1
asked on
how to format html output
his is the code I want to output from a database, but it only output for
unix console, I want the output using Html format, how ?
#!/usr/local/bin/perl -w
# Use the DBM module.
use Getopt::Long;
use English;
use AnyDBM_File;
# Set up the command line options.
my $ret = GetOptions ("d|database:s");
#my $database = $opt_d || die "Usage: $0 -d database\n";
#my $database ="/cgi-bin/process/hctu/sh e/testDir/ convert.db m";
my $database = "convert.dbm";
my (%contents,$count,$type,$n ame,$price ,$desc,$re cord);
# Open the DBM database file.
dbmopen (%contents, $database, 0700) || die "Could not open DBM file $database : $!\n";
# Force the top of page.
$FORMAT_LINES_LEFT = 0;
$count = 0;
# Start printing out the dbm information.
for $number (sort keys %contents)
{
# Get the contents from the hash.
$record = $contents{$number};
# Split the record up.
($type,$name,$price,$desc) = split (/\|/, $record);
$count++;
# Write it...
write;
}
# Close the DBM database.
dbmclose %contents;
# Top of picture formats.
format STDOUT_TOP=
Count Item # Item Type Item Name Price Description Page @>>>>>>
$FORMAT_PAGE_NUMBER
========================== ========== ========== ========== ========== ==========
.
format STDOUT=
@>>>> @|||||| @<<<<<<<<< @<<<<<<<<<<<<< $@####.## ^<<<<<<<<<<<<<<<<<<<<<<<<<
$count,$number,$type,$name ,$price,$d esc
~ ^<<<<<<<<<<<<<<<<<<<<<<<<<
$desc
~ ^<<<<<<<<<<<<<<<<<<<<<<<<<
$desc
.
this is the unix output!
ount Item # Item Type Item Name Price Description Page 1
========================== ========== ========== ========== ========== ==========
1 100 Hardware Hammer $ 25.00 A thing to hit nails with.
2 122 Hardware Nail $ 0.15 A thing to be hit by a
hammer. (see hammer)
3 142 Hardware Sander $ 10.15 Used to sand all sorts of
things, except sand.
4 206 Household Kitchen Sink $ 100.00 Lost the last time I went
on vacation. (next time
this I won't check it in)
5 210 Household Windows $ 45.00 User friendly and does not
need to be plugged in.
6 242 Household Vacuum $ 300.00 I'm not sure what this is
used for; but people seem
to have them anyway.
7 266 Household Microwave $ 100.00 Kitchen item. (Also see
hot water heater)
8 312 Garden Rake $ 25.00 Used to rake leaves, cut
grass and break noses if
left lying on the ground.
9 344 Garden Gravel $ 30.00 Why bother the dog is
going to dig through it
again anyway.
10 362 Garden Top Soil $ 10.00 Is there such a thing as
"Bottom Soil"?
11 384 Garden Mosquitoes $ 0.00 Some are large as a dog
and will carry you away.
12 500 Sports Hockey Stick $ 10.00 Used to push the puck
around.
13 502 Sports Bike $ 400.00 Sits in the garage and
collects dust.
14 556 Sports First Aid Kit $ 25.00 Used more times than not
unfortunately.
15 602 Misc Dog Food $ 1.50 The stuff the cat eats.
16 624 Misc Cat Food $ 0.75 The stuff the dog eats.
17 644 Misc Socks $ 1.00 What both the dog and cat
destroy.
how to use html ouput format to make the output exactly llike this?
thanks!
unix console, I want the output using Html format, how ?
#!/usr/local/bin/perl -w
# Use the DBM module.
use Getopt::Long;
use English;
use AnyDBM_File;
# Set up the command line options.
my $ret = GetOptions ("d|database:s");
#my $database = $opt_d || die "Usage: $0 -d database\n";
#my $database ="/cgi-bin/process/hctu/sh
my $database = "convert.dbm";
my (%contents,$count,$type,$n
# Open the DBM database file.
dbmopen (%contents, $database, 0700) || die "Could not open DBM file $database : $!\n";
# Force the top of page.
$FORMAT_LINES_LEFT = 0;
$count = 0;
# Start printing out the dbm information.
for $number (sort keys %contents)
{
# Get the contents from the hash.
$record = $contents{$number};
# Split the record up.
($type,$name,$price,$desc)
$count++;
# Write it...
write;
}
# Close the DBM database.
dbmclose %contents;
# Top of picture formats.
format STDOUT_TOP=
Count Item # Item Type Item Name Price Description Page @>>>>>>
$FORMAT_PAGE_NUMBER
==========================
.
format STDOUT=
@>>>> @|||||| @<<<<<<<<< @<<<<<<<<<<<<< $@####.## ^<<<<<<<<<<<<<<<<<<<<<<<<<
$count,$number,$type,$name
~ ^<<<<<<<<<<<<<<<<<<<<<<<<<
$desc
~ ^<<<<<<<<<<<<<<<<<<<<<<<<<
$desc
.
this is the unix output!
ount Item # Item Type Item Name Price Description Page 1
==========================
1 100 Hardware Hammer $ 25.00 A thing to hit nails with.
2 122 Hardware Nail $ 0.15 A thing to be hit by a
hammer. (see hammer)
3 142 Hardware Sander $ 10.15 Used to sand all sorts of
things, except sand.
4 206 Household Kitchen Sink $ 100.00 Lost the last time I went
on vacation. (next time
this I won't check it in)
5 210 Household Windows $ 45.00 User friendly and does not
need to be plugged in.
6 242 Household Vacuum $ 300.00 I'm not sure what this is
used for; but people seem
to have them anyway.
7 266 Household Microwave $ 100.00 Kitchen item. (Also see
hot water heater)
8 312 Garden Rake $ 25.00 Used to rake leaves, cut
grass and break noses if
left lying on the ground.
9 344 Garden Gravel $ 30.00 Why bother the dog is
going to dig through it
again anyway.
10 362 Garden Top Soil $ 10.00 Is there such a thing as
"Bottom Soil"?
11 384 Garden Mosquitoes $ 0.00 Some are large as a dog
and will carry you away.
12 500 Sports Hockey Stick $ 10.00 Used to push the puck
around.
13 502 Sports Bike $ 400.00 Sits in the garage and
collects dust.
14 556 Sports First Aid Kit $ 25.00 Used more times than not
unfortunately.
15 602 Misc Dog Food $ 1.50 The stuff the cat eats.
16 624 Misc Cat Food $ 0.75 The stuff the dog eats.
17 644 Misc Socks $ 1.00 What both the dog and cat
destroy.
how to use html ouput format to make the output exactly llike this?
thanks!
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
thanks lot for your hint, I use the table , it works fine.
Eg.
print "Content-type: text/html\n\n";
print "<pre>\n";
# Start printing out the dbm information.
for $number (sort keys %contents)
{
........................
# Write it...
write;
}
print "</pre>\n";