Fußballergebnisse eintragen - Probleme mit txt-datei

Rakatack

Grünschnabel
Hi all,

ich hoffe hier kann mir jemand helfen (meine letzte Hoffnung) ... :/
Wahrscheinlich ist das Problem primitiv aber ich hab einfach zu wenig Ahnung ...
ich spiel immer gegen nen Kumpel Pro Evolution Soccer meist übers Netz.

So und die Ergebnisse unserer Matches wollte ich jetzt mit php verwalten .. klappt eigentlich auch schonmal nicht schlecht ... aber eine Sache treibt mich echt zum Wahnsinn ...

kurz der Aufbau :
die eingabe.html ganz normales HTML Formular zur Eingabe der Matchergebnisse :
Code:
<html>
<body>
<form action = "empfang.php" method = "post">

   Team Kenny <input name="team_kenny" size="30"> gegen <input name="team_rak" size="30"> Team Rakatack  <p>
   Datum : <input name="datum" size="10"> (für heute leer lassen!)<p>
   Ergebnis: Kenny<input name="tore_kenny" size="3">:<input name="tore_rak" size="3">Rakatack <p>
   <input type="submit" value="Match eintragen">
   <input type="reset">
</form>
<br><br>
<a href="tabelle.php">Zur Tabelle</a><br>
<a href="uebersicht.html">Zur Matchübersicht</a>
</body>
</html>

so die Matchübersicht klappt 1a, die poste ich mal gar ned, aber die Tabelle einfach nicht so wie sie soll ... die tabelle.txt sieht z.B. so aus :
Code:
4;5;6;7;
2;2;2;
(Strichpunkte am Ende da oder nicht gleicher Fehler) ...
/* tabelle Aufbau:
PunkteGesamt Kenny;PunkteGesamt Rakatack;ToreGesamt Kenny;ToreGesamtRakatack
Anzahl Siege Kenny;Anzahl Siege Rakatack;Anzahl Unentschieden
*/

Der entscheidende Code in der empfang.php ist nun der hier :
(Erklärung s. Unten ... die vielen "echos" waren nur zur Fehlersuche , "if in doupt print it out" ... leider ohne Erfolg :( )
PHP:
<?php 	echo "$team_kenny gegen $team_rak\n<br>";
		$tore_kenny = intval($tore_kenny); // bringt kein Fehler bei Buchstaben
		$tore_rak = intval($tore_rak);


		$p_kenny; // Variablen für Gesamtwerte
		$p_rak;
		$t_kenny;
		$t_rak;

// Werte aus tabelle.txt lesen
$fpt = fopen("tabelle.txt","r");
		 $zeile = fgets($fpt, 15);
	     $split = explode(";", $zeile);

       $p_kenny	= $split[0]; //intval funzet auch ned 
       $p_rak 	= $split[1];
       $t_kenny = $split[2];
       $t_rak	= $split[3];

       $zeile2 = fgets($fpt, 15);
       $split2 = explode(";", $zeile2);
       $s_kenny = $split2[0];
       $s_rak 	= $split2[1];
       $draws 	= $split2[2];

       echo "$p_kenny<br>";
       echo "<br>MAAAAAN: $p_rak<br>";
       echo "$t_kenny<br>";
       echo "$t_rak<br>";
fclose($fpt);



if ($tore_kenny < $tore_rak){
   echo "Rakatack gewinnt mit $team_rak $tore_rak:$tore_kenny";
      	$t_kenny = $t_kenny + $tore_kenny;
      	$t_rak = $t_rak + $tore_rak;
      	echo "<br>vorher: $p_rak<br>";
      	$p_rak = $p_rak + 3;
      	echo "<br>nachher: $p_rak<br>";
      	$s_rak = $s_rak + 1;
}

else
{
	if ($tore_kenny == $tore_rak){
       echo "Unentschieden ($tore_rak:$tore_kenny)";
       $t_kenny = $t_kenny + $tore_kenny;
       $t_rak = $t_rak + $tore_rak;
       $p_rak = $p_rak + 1;
       $p_kenny = $p_kenny + 1;
       $draws = $draws + 1;
    }
    else
    {
   		if ($tore_kenny > $tore_rak){
           echo "Kenny gewinnt $team_kenny $tore_kenny:$tore_rak";
         		$t_kenny = $t_kenny + $tore_kenny;
      	    	$t_rak = $t_rak + $tore_rak;
      	    	$p_kenny = $p_kenny + 3;
      	    	$s_kenny = $s_kenny + 1;
      	   }
           else
           echo "Fehler";
    }
}

   // Werte in tabelle.txt schreiben :
   $fpw = fopen("tabelle.txt","w");
   if ($fpw)
   {
      //flock($fpw,2);
      $nl = chr(10);
      fputs ($fpw, "$p_kenny;$p_rak;$t_kenny;$t_rak;$nl");
      fputs ($fpw, "$s_kenny;$s_rak;$draws;$nl");
      echo "<br><br>Status: Tabelle wurde aktualisiert.<p>";
      //flock($fpw,3);
      fclose($fpw);
   }
   else
   {
      echo "Datei Fehler";
   }
?>

Das Phänomän nun ich gebe ein neues Match ein z.B. 0:2 Sieg für Rakatack 1a .. die tabelle.txt sieht danach so aus :
Code:
4;8;6;9;
2;3;2;
Passt !

Aber die tabelle.php zeigt totalen Muks an ! :confused:
Erst wenn ich die txt Datei mit dem Editor öffne und einfach nochmal speichere stimmt die tabelle.php ... für mich unbegreiflich

oops die tabelle.php fehlt ja noch (sie liest aus der tabelle.txt und gibt sie im Browser aus) :
PHP:
<html>
<body>
Die Tabelle:
<?php
   $fp = fopen("tabelle.txt","r");
   if ($fp)
   {
      echo "<table border>";
      echo "<tr> <td>Platz</td><td>Spieler</td> <td>Punkte</td> <td>Geschossene Tore</td> ";


		$zeile = fgets($fp, 15);
	     $split = explode(";", $zeile);

       $p_kenny	= $split[0]; //intval funzet auch ned 
       $p_rak 	= $split[1];
       $t_kenny = $split[2];
       $t_rak	= $split[3];

       $zeile2 = fgets($fp, 15);
       $split2 = explode(";", $zeile2);
       $s_kenny = $split2[0];
       $s_rak 	= $split2[1];
       $draws 	= $split2[2];

       if ($p_rak > $p_kenny || (($p_rak == $p_kenny)&&($t_rak > $t_kenny))) {
         echo "<tr> <td>1</td><td>Rakatack</td> <td>$p_rak</td> <td>$t_rak</td>" ;
         echo "<tr> <td>2</td><td>Kenny</td> <td>$p_kenny</td> <td>$t_kenny</td>" ;
      }
      else if ($p_rak < $p_kenny || (($p_rak == $p_kenny)&&($t_rak < $t_kenny)) ) {
         echo "<tr> <td>1</td><td>Kenny</td> <td>$p_kenny</td> <td>$t_kenny</td>" ;
         echo "<tr> <td>2</td><td>Rakatack</td> <td>$p_rak</td> <td>$t_rak</td>" ;
      }
      else if (($p_rak == $p_kenny)&&($t_rak == $t_kenny)) {
      	 echo "<tr> <td>1</td><td>Kenny</td> <td>$p_kenny</td> <td>$t_kenny</td>" ;
         echo "<tr> <td>1</td><td>Rakatack</td> <td>$p_rak</td> <td>$t_rak</td>" ;
      }
      else
      	echo "Fehler in Tabellenberechnung" ;

      echo "</table>";
      fclose($fp);
   }
   else
      echo "Datei wurde nicht gefunden!";

 $gesamt = $s_kenny + $s_rak + $draws;
 echo "<br><br><br>Spiele gesamt:<b> $gesamt </b><br>";
 echo "Siege Kenny:<b> $s_kenny </b> <br>";
 echo "Siege Rakatack:<b> $s_rak </b><br>";
 echo "Unentschieden:<b> $draws </b><br>";

?>

</body>
</html>

Danke im Voraus
 
Zurück