Freddy: Fehler in if-Schleife - weiß nicht wieso

Beitrag lesen

Hallo!
Ich habe ein PHP-Script geschrieben. Der Sinn ist vielleicht etwas schwer zu verstehen, es werden in einer Tabelle Tipps von verschiedenen Tippern, die zwei Mannschaften bilden, verglichen. Die Daten stehen in einer externen Datei "spiel1.dat". Ich geb euch mal das Script:
<?php
$dateiname = "spiel1.dat";
$fp = fopen( $dateiname,"r" ) or die("Konnte $dateiname nicht öffnen");
while(!feof($fp))
 {
 $zaehler++;
 $zeile[$zaehler]= fgets( $fp, 1024);
 }
//erster Eintrag im Array hat Index [1]!
print "<table border=0><tr><td align=center colspan=2>$zeile[2] - $zeile[1]</td></tr>"; //Art - Gegner
print "<tr><td align=center colspan=2>$zeile[3]</td></tr>"; //Spielstand
print "<tr><td align=center colspan=2>$zeile[4]</td></tr>"; //Quoten
print "<tr><td>$zeile[6]:$zeile[7] - $zeile[8] ($zeile[9]) "; // Spieler 1 = Zeile 6
($zeile[8]==$zeile[10])? print ' <img src="richtig.gif">':print ' <img src="falsch.gif">';
print"- $zeile[11]</td>";
print "<td>$zeile[36]:$zeile[37] -  $zeile[38] ($zeile[39]) "; //Gegner 1 = Zeile 36
($zeile[38]==$zeile[40])? print ' <img src="richtig.gif">':print ' <img src="falsch.gif">';
print "- $zeile[41]</td></tr>";
//Weitere 3 Reihen mit je zwei Spalten
//JETZT KOMMT WOHL DER FEHLER:
if($zeile[30]=="%"){ //Prüfen: Spieler 5 vorhanden?
 print "<tr><td>kein 5. Spieler</td>";
 print "Spieler 5 nicht vorhanden<br>";
 }else{
 print "<tr><td>$zeile[30]:$zeile[31] - $zeile[32] ($zeile[33]) ";
  ($zeile[32]==$zeile[34])? print ' <img src="richtig.gif">':print ' <img src="falsch.gif">';
 print "-$zeile[35]</td>";
 }
if($zeile[60]=="%"){ //Prüfen: Gegner 5 vorhanden?
 print "Gegner 5 nicht vorhanden/Test negativ<br>";
 print "<td>kein 5. Gegner</td></tr>";
 }else{
 print "<td>$zeile[60]:$zeile[61] - $zeile[62] ($zeile[63]) ";
  ($zeile[62]==$zeile[64])? print ' <img src="richtig.gif">':print ' <img src="falsch.gif">';
 print "-$zeile[65]</td></tr>";
 }
print"</table>";
?>

Das Problem ist, dass nicht vernünftig geprüft wird, ob die entsprechenden zeilen wirklich leer sind. Die externe spiel1.dat ist so aufgebaut, das für jedne Spieler je 6 Reihen stehen, wo Name, getipptes spiel ,Tipp, quote, Ergebnis und Ereignis (Tor,...) stehen. am Anfang allgemeine Infos wie gesamte Tore, Gegner etc.
Da es vorkommen kann, dass ds Heim/Auswärtsteam evtl. nur 4 spieler aufstellt, habe ich die If-Schleifen eingebaut.
LEider wird da immer etwas falsches Angezeigt. Ich habe - um ganz sicher zu gehen, dass etwas icht stimmt - in alle leeren Zeilen ein Prozent-Zeichen geschrieben. Im Beispiel hat die Heimmannschaft nur 4 Spieler, die Gastmannschaft 5. Ich habe zwei Variationen ausprobiert: einmal - so wie es oben steht - mit Abfrage =="%". Es wurde bei der Gastmannschaft richtiog der 5. Spieler wieder gegeben. Doch bei der Heimmannschaft wuirde nicht "kein 5. Spieler" ausgegeben, sondern die Prozentzeichen. Wenn ich die abfrage in !="%" umgeändert habe, kam auf BEIDEN Seiten die Angabe "kein 5. Spieler vorhanden".
Liegt da jetzt ein logisches Problem vor oder was ist da falsch?
MfG,
Freddy