Arno: Textdatei schreiben haut nicht hin!

Beitrag lesen

Sorry! Hier also der Source Code. Ich hoffe ihr kennt euch aus, hab ein bischen unschän programmiert befürchte ich. Vielleicht ist mir ja trotzdem noch zu helfen ;o)

#!/usr/bin/perl

use CGI qw(:standard);

@Spiele = ("");    # Speicher für alle Datensaetze
@Datensatz = ("");   # Speicher für alle Felder des aktuellen Datensatzes
@Stat2 = ("");

$Jetztwert = time();
$Jetztzeit = localtime($Jetztwert);
@Zeit = split(/ +/,$Jetztzeit);
@Uhrzeit = split(/:/,$Zeit[3]);

#------------- Einlesen der Daten ------------
open(SPIELE, "<spiele.txt") || die "Spieledatei nicht gefunden\n";
while(<SPIELE>)
 {
  if($i == 0)
   {
    $Felder = $_;
   }
  else
   {
    $Spiele[$i] = $_;
   }
  $i++;
 }
close(SPIELE);
chop($Felder);
@Datenfelder = split(/ƒ/,$Felder);

#------------- Einlesen der Statistikdatei ------------
$i=0;
open(STAT2, "<stat2.txt") || die "Statistikdatei nicht gefunden\n";
while(<STAT2>)
 {
  $Stat2[$i] = $_;
  $i++;
 }
close(STAT2);

#------------- Schreiben der Statistiksatei ------------
$i=0;
open(STAT2, ">stat2.txt") || die "Statistikdatei 2 nicht gefunden\n";

for(@Stat2)                        # solange Daten in der Adressenliste sind
{
    @StatDatensatz2 = split(/ƒ/,$_);         # Aktuellen Datensatz aufdröseln
 if ($StatDatensatz2[0] ne "123") {
     if ($i>0) {
   print STAT2 ("\n");
  }

print STAT2 $StatDatensatz2[0];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[1];print STAT2 "ƒ";
   print STAT2 $StatDatensatz2[2];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[3];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[4];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[5];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[6];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[7];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[8];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[9];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[10];print STAT2 "ƒ";
  print STAT2 $StatDatensatz2[11];print STAT2 "ƒ";

}
$i++;
}

Statistik Datei bleibt noch offen, weil noch etwas dazugeschrieben wird!

&menu;

for(@Spiele)
 {
  @Datensatz = split(/ƒ/,$_);
  $i = 0;
  if ($Datensatz[0] eq param('Spiel')){

#Neuer Statistikeintrag -----------
 print STAT2 "\n"; print STAT2 "$Datensatz[0]ƒ$Datensatz[1]ƒ1ƒ$Zeit[0]ƒ$Zeit[1]ƒ$Zeit[2]ƒ$Zeit[3]ƒ";
 print STAT2 $ENV{'REMOTE_ADDR'};print STAT2 "ƒ";
 print STAT2 $ENV{'REMOTE_HOST'};print STAT2 "ƒ";
 print STAT2 $ENV{'REMOTE_USER'};print STAT2 "ƒ";
 print STAT2 $ENV{'HTTP_REFERER'};print STAT2 "ƒ";
 print STAT2 $ENV{'HTTP_ACCEPT_LANGUAGE'};print STAT2 "ƒ";

close(STAT2);

#ENDE Neuer Statistikeintrag -----------

usw usw usw

Hier folgt dann noch die HTML Ausgabe