Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re: Quick and dirty counter

by CharlesClarkson (Curate)
on Jan 21, 2002 at 13:51 UTC ( #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;
$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.

Charles K. Clarkson

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (9)
As of 2016-10-24 19:35 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (309 votes). Check out past polls.