Hallo fastix®,
Hallo Selfforum,
danke für deine Antwort und die Erklärungen zum Perl-Quelltext.
Ich denke, dass ich den Perl-Quelltext jetzt verstanden habe.
Alle Teile der Geschichte werden als .txt-Dateien im selben Verzeichnis gespeichert. Der Dateiname ist immer die nummer der Geschichte. Also heißt die erste geschichte logischerweise 1.txt
Ich habe mal versucht den Perl-Quelltext in PHP umzusetzten.
das ist mir wohl zum Teil auch gelungen, es fehlt nur noch die richtige Sortierung.
Ich versuche das mal am Beispiel zu erklären:
Wenn wir also eine kleine Geschichte mit 8 Teilen haben, sollte das so aussehen:
Kapitel 1 -> 1.txt
Kapitel 2 -> 2.txt
Kapitel 3 -> 4.txt
Kapitel 3 -> 5.txt
Kapitel 4 -> 10.txt
Kapitel 2 -> 3.txt
Kapitel 3 -> 6.txt
Kapitel 4 -> 12.txt
Es siehst aber momentan so aus:
Kapitel 1 -> 1.txt
Kapitel 4 -> 10.txt
Kapitel 4 -> 12.txt
Kapitel 2 -> 2.txt
Kapitel 2 -> 3.txt
Kapitel 3 -> 4.txt
Kapitel 3 -> 5.txt
Kapitel 3 -> 6.txt
Die Sortierung entspricht momentan noch der wie sie im Verzeichnis ausgelesen wurde, also nach dem Dateiname absteigend.
Hier mein neuer PHP-Quelltext. Kannst du (könnt ihr) mir helfen das mit der Sortierung hinzubekommen?
echo "<b>Überblick über die Geschichte:</b><br>\n";
// liest alle vorhandenen Dateien aus dem Verzeichnis aus
$handle = @opendir("story/");
while ($file = @readdir ($handle))
{
//.txt vom String entfernen ($next)
$rest = substr($file, 0, -4);
$next = $rest;
//Berechnung des Kapitels ($chapter)
$chapter = "0";
while($rest >= 1)
{
if ($rest % 2 != 0)
{
$rest = $rest - 1;
}
$rest = $rest / 2;
$chapter++;
}
$datei = "/web/stuff/story/$next.txt";
$array = file($datei);
//Einrückung entsprechend Kapitel
$margin = $chapter * 10;
echo "<spanstyle="marginleft: ".$margin."px;">Kapitel$chapter: <a href="story.php$next&chapter=$chapter">$array[2]</a> $array[0]<br></span>";
}
@closedir($handle);
mfg bonehunter