"K.L. Hayes" wrote:
>
> Hello All,
Hello,
> Could somebody please help me figure out why the following code will
> not write the IP address to a file?
>
> I've verified that the code can find the file, open it & overwrite any
> junk/test data already there with nothing. I've also printed out the
> IP address on the previous page using just the print statement.
>
> <CODE>
> sub pcheck {
> if (param('pwd') eq $pw ) {
> open (CHECK,">${path}dmp.dat") || die "Cannot open dmp.dat: $!";
> flock (CHECK, 2) if ($flock);
use Fcntl ':flock';
if ( $flock ) {
flock( CHECK, LOCK_EX ) or die "Cannot lock dmp.dat: $!";
}
> while (<CHECK>) {
You need this line only if you are reading data IN from a file, not
writing OUT to a file.
> print "$ENV{'REMOTE_ADDR'}"; }
print CHECK "$ENV{'REMOTE_ADDR'}";
> close (CHECK);
> flock (CHECK, 8) if ($flock);
There is no point in trying to unlock the file now, the close() has
already unlocked it.
> } else { &invalid_info; }
} else { invalid_info() }
> &ad2;
ad2();
When you call subroutines you shouldn't use an ampersand unless you
understand how and why it behaves differently.
perldoc perlsub
> }
> </CODE>
>
> All help is appreciated. Thank you for your time.
John
--
use Perl;
program
fulfillment
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]