Newbie Question
Ken Loomis
kloomis at bigplanet.com
Sat Aug 12 15:01:32 CDT 2000
I just started learning Perl and found the San Diego Perl Mongers group.
Trying to re-arrange my schedule to make it to this month's meeting, but I
have a challenge today that I need some help that I would be most
appreciative of.
I use a small data file to keep the Customer_ID number in. Each time a new
customer registers, I increment the number in that file. However, we are
getting so many requests, that at time the number gets reset to 1. I am
pretty sure this is because of the way the flock works.
I checked out the FAQ's and found this code segment for handling this:
use Fcntl;
sysopen(FH, "numfile", O_RDWR|O_CREAT) or die "can't open numfile:
$!";
flock(FH, 2) or die "can't flock numfile:
$!";
$num = <FH> || 0;
seek(FH, 0, 0) or die "can't rewind
numfile: $!";
truncate(FH, 0) or die "can't truncate
numfile: $!";
(print FH $num+1, "\n") or die "can't write numfile:
$!";
# DO NOT UNLOCK THIS UNTIL YOU CLOSE
close FH or die "can't close numfile:
$!";
I ran a test of this from one domain that I host and it worked fine. However
when I incorporated it into the client's CGI that collects the customer info,
I get an error.
Here is the code segment as I placed it into the CGI:
sysopen(FH, "/www/htdocs/freetitandslcom/CustomerID.dat",
O_RDWR|O_CREAT) or &safe_die("Can't open CustomerID.dat file");
flock(FH, 2) or &safe_die("can't flock
CustomerID.dat: $!");
$newcustomerid = <FH> || 0;
seek(FH, 0, 0) or &safe_die("can't rewind
CustomerID.dat: $!");
truncate(FH, 0) or &safe_die("can't truncate
CustomerID.dat: $!");
(print FH $newcustomerid+1, "\n") or &safe_die("can't
write CustomerID.dat: $!");
# DO NOT UNLOCK THIS UNTIL YOU CLOSE
close FH or &safe_die("can't close
CustomerID.dat: $!");
The error I get is:
can't truncate CustomerID.dat: Permission Denied
As a shot in the dark, I tried setting the permission on the "CustomerID.dat"
file to '766' but that had no effect.
I am now searching the FAQ's for "Permission Denied" but was hoping someone
out there could point me in a narrower direction.
Thanks in advance for any help.
Ken Loomis
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kloomis.vcf
Type: text/x-vcard
Size: 333 bytes
Desc: Card for Ken Loomis
Url : http://mail.pm.org/archives/san-diego-pm/attachments/20000812/62375769/kloomis.vcf
More information about the San-Diego-pm
mailing list