Gerhard: Warum läuft mein Script hier in eine Endlosschleife?

Hallo,

in einem Forum will ich in einem Topic je einen Link zum nächsten und zum vorigen Topic generieren.
Die Topics stehen jeweils in .txt-Dateien, aber wenn ein Topic gelöscht wurde, fehlt die entsprechende .txt-Datei.

Das sollte mein Scriptteil eigentlich berücksichtigen. Das Script läuft perfekt, aber wenn eine txt-datei fehlt, läuft es endlos bis zum Timeout.

Erkennt einer, warum?

Grüße, Gerhard

--------------------- schnipp-----------------
$t_vorher=$thread-1;
$t_nachher=$thread+1;

$t_vorher=str_pad ($t_vorher, 6, "0", STR_PAD_LEFT); //erweitert $t_vorher auf 6 Stellen mit führenden Nullen vorab
$t_nachher=str_pad ($t_nachher, 6, "0", STR_PAD_LEFT); //erweitert $t_nachher auf 6 Stellen mit führenden Nullen vorab

while ((!file_exists("$verz/Forum$forum/$t_vorher.txt")) && ($t_vorher > "0")) {
$t_vorher--;
$file=str_pad ($t_vorher, 6, "0", STR_PAD_LEFT); //erweitert $t_vorher auf 6 Stellen mit führenden Nullen vorab
}
$oeffne_summe = file("$verz/Forum$forum/last.txt");
$summe=trim($oeffne_summe[1]);
while ((!file_exists("$verz/Forum$forum/$t_nachher.txt")) && ($t_nachher < $summe)) {
$t_vorher++;
$file=str_pad ($t_nachher, 6, "0", STR_PAD_LEFT); //erweitert $t_nachher auf 6 Stellen mit führenden Nullen vorab
}
--------------------- schnipp-----------------

  1. Hallo,

    in einem Forum will ich in einem Topic je einen Link zum nächsten und zum vorigen Topic generieren.
    Die Topics stehen jeweils in .txt-Dateien, aber wenn ein Topic gelöscht wurde, fehlt die entsprechende .txt-Datei.

    Das sollte mein Scriptteil eigentlich berücksichtigen. Das Script läuft perfekt, aber wenn eine txt-datei fehlt, läuft es endlos bis zum Timeout.

    Erkennt einer, warum?

    Grüße, Gerhard

    --------------------- schnipp-----------------
    $t_vorher=$thread-1;
    $t_nachher=$thread+1;

    $t_vorher=str_pad ($t_vorher, 6, "0", STR_PAD_LEFT); //erweitert $t_vorher auf 6 Stellen mit führenden Nullen vorab
    $t_nachher=str_pad ($t_nachher, 6, "0", STR_PAD_LEFT); //erweitert $t_nachher auf 6 Stellen mit führenden Nullen vorab

    while ((!file_exists("$verz/Forum$forum/$t_vorher.txt")) && ($t_vorher > "0")) {
    $t_vorher--;
    $file=str_pad ($t_vorher, 6, "0", STR_PAD_LEFT); //erweitert $t_vorher auf 6 Stellen mit führenden Nullen vorab
    }
    $oeffne_summe = file("$verz/Forum$forum/last.txt");
    $summe=trim($oeffne_summe[1]);
    while ((!file_exists("$verz/Forum$forum/$t_nachher.txt")) && ($t_nachher < $summe)) {
    $t_vorher++;
    $file=str_pad ($t_nachher, 6, "0", STR_PAD_LEFT); //erweitert $t_nachher auf 6 Stellen mit führenden Nullen vorab
    }
    --------------------- schnipp-----------------

    Oweia...ist schon spät ;-)
    Ich sehs gerade selber...kommt von copy+paste aus anderen, früher geschriebenen Scripten. Das stehen noch 2 $file drinne.

    Gute Nacht ;-)

    Gerhard

    1. while ((!file_exists("$verz/Forum$forum/$t_nachher.txt")) && ($t_nachher < $summe)) {
      $t_vorher++;
      $file=str_pad ($t_nachher, 6, "0", STR_PAD_LEFT); //erweitert $t_nachher auf 6 Stellen mit führenden Nullen vorab
      }
      --------------------- schnipp-----------------

      Oweia...ist schon spät ;-)
      Ich sehs gerade selber...kommt von copy+paste aus anderen, früher geschriebenen Scripten. Das stehen noch 2 $file drinne.

      Gute Nacht ;-)

      Gerhard

      Zudem mußte natürlich $t_vorher++; in $t_nachher++; geändert werden, jetzt läuft prima durch.
      Warum haut man sich auch immer wieder die Nächte mit sowas um die Ohren ;-)

      Also, gute Nacht :-)

      Gerhard