xNeTworKx: flock vorhanden, aber Datei schon 2x gelöscht ?

Beitrag lesen

Hallo,
Jetzt ist es mir schon zum 2. Mal passiert, daß meine Statistik gelöscht  wurde, und wieder von 0 zum zählen angefangen hat, obwohl ich flock verwende. was kann noch die Ursache sein, daß so etwas passiert ?
Hier das Script, das pro Klick, die Statistik um 1 erhöht.
#!/usr/bin/perl -w

use CGI;
use strict;

my $query = new CGI;
my $var = $query->param('var');
my $ip = $ENV{'REMOTE_ADDR'};
my $file;
my($neues,
   $uebermich,
   $fotos,
   $musik,
   $statistiken,
   $forum,
   $seiteninfo,
   $acid4uamp) = (0,0,0,0,0,0,0,0);

if ($ip ne '212.17.119.105')  {
   open (FILE,"clicks.txt") or die "Cant open database, please try again: $!\n";
   while (<FILE>)   {
   $file .=  $_;
   }
   close FILE;

if ($file =~ /<neues>(\d+?)</neues>/)   {   $neues = $1;   }
   if ($file =~ /<uebermich>(\d+?)</uebermich>/)   {   $uebermich = $1;   }
   if ($file =~ /<fotos>(\d+?)</fotos>/)   {   $fotos = $1;   }
   if ($file =~ /<musik>(\d+?)</musik>/)   {   $musik = $1;   }
   if ($file =~ /<statistiken>(\d+?)</statistiken>/)   {   $statistiken = $1;   }
   if ($file =~ /<forum>(\d+?)</forum>/)   {   $forum = $1;   }
   if ($file =~ /<seiteninfo>(\d+?)</seiteninfo>/)   {   $seiteninfo = $1;   }
   if ($file =~ /<acid4uamp>(\d+?)</acid4uamp>/)   {   $acid4uamp = $1;   }
   if ($var eq 'a')   {   $neues++;   }
   if ($var eq 'b')   {   $uebermich++;   }
   if ($var eq 'c')   {   $fotos++;   }
   if ($var eq 'd')   {   $musik++;   }
   if ($var eq 'e')   {   $statistiken++;   }
   if ($var eq 'f')   {   $forum++;   }
   if ($var eq 'g')   {   $seiteninfo++;   }
   if ($var eq 'i')   {   $acid4uamp++;   }

open (FILE,">clicks.txt") or die "Cant save to database : $!\n";
   flock FILE, 2;
   print FILE "<neues>$neues</neues>\n";
   print FILE "<uebermich>$uebermich</uebermich>\n";
   print FILE "<fotos>$fotos</fotos>\n";
   print FILE "<musik>$musik</musik>\n";
   print FILE "<statistiken>$statistiken</statistiken>\n";
   print FILE "<forum>$forum</forum>\n";
   print FILE "<seiteninfo>$seiteninfo</seiteninfo>\n";
   print FILE "<acid4uamp>$acid4uamp</acid4uamp>\n";
   close FILE;
}

if ($var eq 'a')  {
  print $query->redirect('http://www.acid4u.com/homepage4/news/news.cgi');
  }
  if ($var eq 'b')  {
  print $query->redirect('http://www.acid4u.com/homepage4/uebermich.html');
  }
  if ($var eq 'c')  {
  print $query->redirect('http://www.acid4u.com/homepage4/fotos/fotos.html');
  }
  if ($var eq 'd')  {
  print $query->redirect('http://www.acid4u.com/homepage4/musik/musik_abfrage.cgi');
  }
  if ($var eq 'e')  {
  print $query->redirect('http://www.acid4u.com/homepage4/statistik.cgi');
  }
  if ($var eq 'f')  {
  print $query->redirect('http://www.acid4u.com/homepage4/forum/forum.cgi');
  }
  if ($var eq 'g')  {
  print $query->redirect('http://www.acid4u.com/homepage4/ueberseite.html');
  }
  if ($var eq 'i')  {
  print $query->redirect('http://www.acid4u.com/homepage4/acid4uamp/acid4uamp.shtml');
  }