hmm har fått det att funka förr man nu är det hjärnslir
Jag har win2000 med IIS och Active Perl.
Nu har jag gjort en enkel räknare som räknar antalet träffar på sidan men av någon anledning så får jag det bara att funka när jag har koden så här
#!/usr/bin/perl
open (COUNTER, "count.txt");
$rad1 = <COUNTER>;
close (COUNTER);
$rad1=~/Antalet=(.*)st/;
$antal = $1;
$antal++;
open(COUNTER, ">count.txt");
print COUNTER "Antalet=",$antal,"st\n";
close (COUNTER);
print "Content-type: text/html\n\n";
print "Antal som har varit här $antal";
exit;
Detta blir att txt filen count.txt lägger sig direkt under C:\
Det jag vill är att count.txt skall lägga sig där jag har mitt cgi script
alltså i cgi-bin
Har testat massor av sökvägar men inte då
är det någon som vet hur man gör detta?
#!/usr/bin/perl -w
use strict;
my ( $count_file, $count );
$count_file = 'count.txt';
if ( -e $count_file ) {
$count = read_count($count_file) + 1;
write_count( $count_file, $count );
}
else {
write_count( $count_file, 1 );
$count = 1;
}
print
"Content-type: text/html\n\n",
"Antal som har varit här $count";
sub read_count {
my ($file) = @_;
open( ID, "<$count_file" )
or die "Kan inte öppna räknarfilen: $count_file.\nAnledning: $!";
flock( ID, 1 );
my $count = <ID>;
close ID;
return $count;
}
sub write_count {
my ( $file, $count ) = @_;
open( ID, ">$count_file" )
or die "Kan inte öppna räknarfilen: $count_file.\nAnledning: $!";
flock( ID, 2 )
or die "Kan inte få exklusivt lås på $count_file.\nAnledning: $!";
print ID $count;
close ID;
}