Bastian: Problem mit explode

Hallo,

ich möchte ein User-Homepage-Script anpassen.
Die Daten werden in einer .txt-Datei gespeichert, die wie folgt aufgebaut ist:

||email@censored.de||#000000<|>#FFFFFF<|>#555555<|>#FFFFFF<|>#777777<|>#000000<|>#AAAAAA<|>Hier der Text<|bi|>bild.gif<|><|gb|><|gb|>Gästebucheintrag<|gb|><|gbend|><|>||

Es ist nur ein Textfeld zum Editieren vorgegeben, ich möchte aber vier realisieren.

Im Originalscript sieht das so aus:

---------------------------------------------------------------------
$dat = file("user/$nick.txt");
$dat2 = explode("||", $dat[count($dat) - 1]);
$dat3 = explode("<|>", $dat2[2]);
$dat4 = explode("<|bi|>", $dat3[7]);

echo "<form method="post" action="inhalt.php?sav=sav3">
<input type="hidden" name="nick" value="$nick">
<textarea name="texten">$dat4[0]</textarea>
<br>
<b>Bild:</b> <input type="text" name="bild" value="$dat4[1]"><br><br>
<input type="submit" value="Speichern"></form></center>";
}

if($sav == "sav3"){

$dat = file("user/$nick.txt");
$dat2 = explode("||", $dat[count($dat) - 1]);
$dat3 = explode("<|>", $dat2[2]);

if(strlen($texten)<2){
$texten= "Hier der Text";
}
$texten = preg_replace("/\r\n|\n/s","", $texten);

$texten = "$texten<|bi|>$bild";

foreach($dat as $date){
$daten = str_replace("$dat3[7]","$texten","$date");
}

$data = fopen("user/$nick.txt","w+");
fputs($data,"$daten");
fclose($data);
---------------------------------------------------------------------

Was muss ich korrigieren, um 4 editierbare Textfelder zu ermöglichen?
Wäre für Hilfe sehr dankbar.

Bastian

  1. hi,

    Was muss ich korrigieren, um 4 editierbare Textfelder zu ermöglichen?

    noch drei zusätzliche <texareas> ausgeben :-)

    _welche_ der oben genannten daten du in welcher dieser textareas bearbeiten willst, hast du ja leider bisher nicht definiert ...

    gruss,
    wahsaga

    1. Hallo,

      noch drei zusätzliche <texareas> ausgeben :-)

      Na klar, aber welche Variablen muss ich bei den anderen 3 Textareas angeben und wie muss ich die Scriptbefehle ändern, damit auch die 3 anderen Strings richtig in die .txt-Datei zusammengefügt werden und später wieder auseinandergepflückt werden können?

      _welche_ der oben genannten daten du in welcher dieser textareas >>bearbeiten willst, hast du ja leider bisher nicht definiert ...

      Es geht nur um die Stelle "<|>Hier der Text<|>", die mit dem explode-Befehl extrahiert wird und später wieder eingefügt wird.
      Es soll nachher also "<|>Hier Text1<|>Text2<|>Text3<|>Text4<|>in der .txt-Datei stehen. Meine Frage ist also, wie die 3 anderen Variablen lauten müssen und was bei explode stehen muss, damit alles einzelnd zerstückelt und wieder richtig zusammengesetzt wird.

      Mit dem explode-Befehl kenne ich mich leider überhaupt nicht aus. Ich hoffe, ihr versteht meine Frage nun besser.
      Freue mich immer noch über weitere Hilfe.

      Vielen Dank

      Bastian