Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: Quick and dirty counter

by CharlesClarkson (Curate)
on Jan 21, 2002 at 13:51 UTC ( [id://140357]=note: print w/replies, xml ) Need Help??


in reply to Quick and dirty counter

A text file should end with a newline. Your code expects it, that's why you are using chomp.

print OUTFILE "pagecounter\n$Counter"; should be:
print OUTFILE "pagecounter\n$Counter\n";

Also, you should check open for success. Generally this is done with die:
open COUNTER, $counter_file or die "Cannot open $counter_file: $!";

Finally, you don't need the while block. If you know the count will always be on the second line:

my $counter_file = 'counter.txt'; open COUNTER, $counter_file or die "Cannot open $counter_file: $!"; my $first_line = <COUNTER>; chomp( my $counter = <COUNTER> ); close COUNTER;
and:
$counter++; open COUNTER, '>', $counter_file or die "Cannot open $counter_file: $! +"; print COUNTER "$first_line$counter\n"; close COUNTER;

Assuming you keep ignoring the warnings merlyn mentions above.




HTH,
Charles K. Clarkson

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://140357]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (3)
As of 2024-04-25 21:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found