Hi all,
I am learning perl , I just wonder if I have a flat file.
record.txt
Toyota|California|||||
Toyota|Arizona|||||
Toyota|Nevada|||||
Toyota|Florida|||||
Honda|California|||||
Honda|Florida|||||
Honda|Arizona|||||
How we write a code to have a result is:
==== ========== ======= ====== ======= =====
Toyota 2 1 1 1 5
Honda 1 1 0 1 3
I can only do:
MADE TOTAL
==== =====
Toyota 5
Honda 3Here are some of my code:
#summarize.cgi
open (DATA,"record.txt") || die ("Can't Open data File \n");
@data=<DATA>;
close DATA;
foreach $line (@data) {
($made, $state, $tmp , $tmp, $tmp, $tmp)=split(/\|/,$line);
if ($made) {
$count{$made}++;
}
if ($state) {
$countstate{$state}++;
}
}
&header_response;
$x=0;
foreach $made (keys %count) {
$x++;
print "<TR ><TD>$x</TD><TD><b>$made </b></TD><TD>$count{$made} </TD></TR> \n";
}
&close_response;
&log_response;
$z=0;
foreach $LogOp (keys %countstate) {
$z++;
print "<TR ><TD>$z</TD><TD><b>$state </b></TD><TD>$countstate{$state} </TD></TR> \n";
}
&footer_response;
Can you help me to solve this problem ?
Thank you very much,
TD.
I am learning perl , I just wonder if I have a flat file.
record.txt
Code:
Toyota|California||||| Toyota|California|||||
Toyota|Arizona|||||
Toyota|Nevada|||||
Toyota|Florida|||||
Honda|California|||||
Honda|Florida|||||
Honda|Arizona|||||
How we write a code to have a result is:
Code:
MADE CALIFORINA ARIZONA NEVADA FLORIDA TOTAL ==== ========== ======= ====== ======= =====
Toyota 2 1 1 1 5
Honda 1 1 0 1 3
I can only do:
MADE TOTAL
==== =====
Toyota 5
Honda 3
Code:
#!/opt/WWW/tools/perl5/perl #summarize.cgi
open (DATA,"record.txt") || die ("Can't Open data File \n");
@data=<DATA>;
close DATA;
foreach $line (@data) {
($made, $state, $tmp , $tmp, $tmp, $tmp)=split(/\|/,$line);
if ($made) {
$count{$made}++;
}
if ($state) {
$countstate{$state}++;
}
}
&header_response;
$x=0;
foreach $made (keys %count) {
$x++;
print "<TR ><TD>$x</TD><TD><b>$made </b></TD><TD>$count{$made} </TD></TR> \n";
}
&close_response;
&log_response;
$z=0;
foreach $LogOp (keys %countstate) {
$z++;
print "<TR ><TD>$z</TD><TD><b>$state </b></TD><TD>$countstate{$state} </TD></TR> \n";
}
&footer_response;
Can you help me to solve this problem ?
Thank you very much,
TD.