php-File im Textfeld editieren

Mayday171

Erfahrenes Mitglied
Hallo

Versuche mit eine Seite zu schreiben, in der ich mit Hilfe einer Auswahlliste bestimmte PHP, bzw. HTML Dateien in einen Textfeld bearbeiten kann. Mit Hilfe des Buttons Abschicken werden die Files (Pfad im Value) an das Textfeld übergeben (mit include eingefügt). Es klappt alles wunderbar, bis auf das Schreiben der neuen Dateien bzw. das Überschreiben. Wenn der Code geändert wird (klick auf Button Aendern --> Sprung in If-Bedingung) hängt er mir vor jedes " ein \ . Wenn ich erneut auf Ändern drücke verdreifacht sich das ganze (\\\) usw.

Wieso passiert das ?
Wieso speichert er den Code nicht so ab wie er im Textfeld steht?
Was kann ich tun damit es klappt

PHP:
<?
if ($Aendern == "Ändern")              // Änderung in Datei wird geschrieben
    {
    $fp = fopen("$auswahl","w");
    $data ="$inhalt";
    fwrite($fp,$data);
    fclose($fp);

    $check_ok = "<font color = 'red'>Ihre Daten wurden erfolgreich geändert!<br>Bitte warten sie bis die Daten aktualisiert werden.</font>";
    echo "$check_ok";
    echo "$auswahl";
        }
        ?>
<form name="Menue" action="" method ="post">       // Auswahlliste
 <select name="auswahl" size=3>
     <option value='nix'>[Bitte Auswählen]</option>
     <option value='../links.html'>Navigation</option>
     <option value='../rechts.html'>Homesite</option>
     <option value='../ausgeloggt.php'>not Logedin Meldung</option>
     <option value='../bilder.php'>Bilder</option>
     <option value='../bilderup.php'>hochgeladene Bilder</option>
     <option value='../checkuser.php'>Userüberprüfung</option>
     <option value='../eingeloggt.php'>Login Meldung</option>
     <option value='../fun.html'>Fun</option>
     <option value='../horoskop.html'>Horoskop</option>
     <option value='../index.php'>Index Datei</option>
     <option value='../joke.txt'>gepostete Witze</option>
     <option value='../kontakt.html'>Kontaktformular</option>
     <option value='../linksoben.html'>Uhr und Kalender</option>
     <option value='../login.php'>Login Formular</option>
     <option value='../logout.php'>Logout Datei</option>
     <option value='../member.php'>Mitgliederkennung</option>
     <option value='../memberstart.php'>Startseite der Mitglieder</option>
     <option value='../mich.html'>Steckbrief</option>
     <option value='../oben.html'>Kopfframe</option>
     <option value='../profil.php'>Profilvorlage der Benutzer</option>
     <option value='../profilerstellen.php'>Profilerstellungsformular</option>
     <option value='../rechtsoben.html'>Willkommenleiste</option>
     <option value='../tests.html'>Tests</option>
     <option value='../upload.php'>Uploadüberprüfung</option>
     <option value='../uploadbild.php'>Bildupload Formular</option>
     <option value='../uploadprofil.php'>Profilbildupload</option>
     <option value='../verlassen.php'>Logoutmeldung</option>
     <option value='../videos.html'>Videos</option>
     <option value='../witze.php'>Witze</option>
     <option value='../witzhinzu.php'>Witze hinzufügen</option>
     <option value='admin.php'>Adminbereich</option>
     <option value='profilverwalten.php'>Profile verwalten</option>
     <option value='../user/memberlist.php'>Memberliste</option>
     <option value='../user/newmember.php'>Memberbenutzerdaten</option>
 </select>
  <input type="submit" name="Abschicken" value="Abschicken">
   <input type="submit" name="Aendern" value="Ändern">
  <input type="reset" value=Zurücksetzen>
<textarea name="inhalt" rows=20 cols=80 wrap="virtual"><?@include $auswahl;?></textarea>  // auswahl = Value der Options der Auswahlliste im Formular
</form>


</body>
</html>

DANKE IM VORAUS!!

MfG
 
Wenn Du ein PHP-Script in die Textarea includest wie hier
PHP:
<textarea name="inhalt" rows=20 cols=80 wrap="virtual"><?@include $auswahl;?></textarea>
dann bekommst Du nur die Ausgabe.

Du musst das File auslesen und den Inhalt in die Textarea schreiben.
include() ist der falsch Ansatz.
 
Mit dem including hab ich eigentlich keine Probleme. Denke auch das das nicht weiter stört. Wenn ich es anzeigen lassen will, zeigt er mit auch den orginal Code aus der Datei an.Ich denke das Problem liegt im Schreiben bzw. Überschreiben der Datei, denn sobald ich auf Ändern klicke und er die Bedingung ausführt macht er mir die \\\ hinzu.

Woran liegt das nur ?

MfG
 
Der Code wird ja beim normalen bzw. ersten includen sauber angezeigt. Erst wenn ich ihn neu schreib kommen die \\ hinzu. Dann liegt es doch an den fwrite usw. und nicht am Include, oder?

MfG
 
Hallo!

Was passiert mit einer PHP wenn man diese in einer anderen PHP includet?
Richtig, der Code wird geparst..... Du bekommst also nicht den Quellcode angezeigt, sondern die Ausgabe.

Ich spreche die Dateien mit file_get_contents() an und gebe sie im Textarea mittels echo() aus.

Gruss Dr Dau
 
Zurück