Felix Riesterer: ist foreach buggy oder mein script einfach schei.....?

Beitrag lesen

Servus ihr Forumler,

ich verstehe mein Script wiedermal nicht mehr. Nach den Ausgaben im HTML-Quelltext zu urteilen kommt in der foreach-Schleife immer nur das letzte Array-Element dran. Die anderen Array-Elemente werden garnicht abgearbeitet. Warum nur? Hier meine Funktion:

function benutzer_loeschen($pfad, $benutzer)
      {
      $dateiinhalt = file($pfad."/.htpasswd");
      echo "<!-- zu löschender Benutzer: ".$benutzer." //-->\n";
      if($dateiinhalt[0] != "")
         {
         echo "<!-- Der Inhalt der Datei ist nicht leer! //-->\n";
         echo "<!-- In der Datei sind ".count($dateiinhalt)." Logins gespeichert... //-->\n";
         $zweckstring = "";
         foreach($dateiinhalt as $login);
            {
            echo "<!-- Login ".$login.": \n";
            $test = explode(":", $login);
            if($test[0] != $benutzer && $test[0] != "")
               {
               echo "Der Benutzer ".$test[0]." ist ungleich ".$benutzer." und auch nicht leer...\n";
               $zweckstring = $zweckstring.$test[0].":".trim($test[1])."\r\n";
               echo "Momentaner Zweckstring: ".$zweckstring;
               }
            echo "Das war Login ".$login.".\n//-->\n";
            }
         editierte_datei_speichern(".htpasswd", $pfad, $zweckstring);
         echo "<!-- Benutzer $benutzer aus Verzeichnis $pfad geloescht! //-->\n";
         echo "<!-- .htpasswd: $zweckstring //-->\n";
         }
      }

Und hier die Ausgabe (Auszug) in meinem HTML-Dokument:
<div class="admin">
<!-- zu löschender Benutzer: rehe //-->
<!-- Der Inhalt der Datei ist nicht leer! //-->
<!-- In der Datei sind 8 Logins gespeichert... //-->
<!-- Login insekten:36dkBY6ClpNOU
:
Der Benutzer insekten ist ungleich rehe und auch nicht leer...
Momentaner Zweckstring: insekten:36dkBY6ClpNOU
Das war Login insekten:36dkBY6ClpNOU
.
//-->
<!-- Benutzer rehe aus Verzeichnis ../eltern geloescht! //-->
<!-- .htpasswd: insekten:36dkBY6ClpNOU
 //-->
<h2>Benutzerverwaltung</h2>

Jedenfalls muss ich doch daraus schließen, dass in meiner foreach-Schleife nur der letzte Login abgearbeitet wird, oder nicht? Wer findet meine(n)(Denk-?)Fehler? Jedenfalls im Vorraus schonmal Danke für eure Bemühungen.

Liebe Grüße aus Ellwangen,

Felix Riesterer.