Jutta D.: warum zählt der Zähler nicht?

Hallo kann mir wer helfen?

Mit diesem Counter möchter ich inkremieren.
Angezeigt wird er auf dem Bildschirm (auch der Wert aus der Datei counter.txt), aber er zählt nicht weiter.

#########################################

#Länge des Counter
$anznull=6 ;

open(COUNT,"<$data_dir/counter.txt");
  
   $counter=<COUNT>;
   seek(COUNT,0,0);
   $counter++ ;
   print COUNT $counter ;
   close (COUNT) ;

$count = length($counter) ;

for($x=0 ; $x<=$anznull-$count ; $x++) { print "0" ; }

print "$counter\n";

rechtherzlichen Dank Jutta

  1. Hallo Jutta,

    so wie ich das sehe, ist die Datei nur zum lesen geöffnet, nicht zum schreiben...

    probier mal so:

    ***************************
    open (in, "datei");
    $count = <in>;
    close in;
    $count++;

    open (out, ">datei");
    print out $count;
    close out;

    *******************************

    Reiner

    *************************************
    *************************************

    Hallo kann mir wer helfen?

    Mit diesem Counter möchter ich inkremieren.
    Angezeigt wird er auf dem Bildschirm (auch der Wert aus der Datei counter.txt), aber er zählt nicht weiter.

    #########################################

    #Länge des Counter

    »»  $anznull=6 ;

    open(COUNT,"<$data_dir/counter.txt");
      
       $counter=<COUNT>;
       seek(COUNT,0,0);
       $counter++ ;
       print COUNT $counter ;
       close (COUNT) ;

    $count = length($counter) ;

    for($x=0 ; $x<=$anznull-$count ; $x++) { print "0" ; }

    print "$counter\n";

    rechtherzlichen Dank Jutta

  2. open(COUNT,"<$data_dir/counter.txt");

    open(COUNT,"+<$data_dir/counter.txt") or die "$data_dir/counter.txt: $!";

    Und am besten noch:

    flock COUNT, 2;

    $counter=<COUNT>;
       seek(COUNT,0,0);
       $counter++ ;
       print COUNT $counter ;
       close (COUNT) ;

    Viele Grüße,
    Daniel Bradler