mabuhay: PHP Datei öffnen und Bearbeiten

Hi

Ich versuche mit dem FCKeditor eine Datei zu Bearbeiten. Dabei handelt es sich um eine *.php Datei. Wenn ich nun die Datei mit z.B.

  
file_get_contents("test.php");  

einlese wird aber nur der Teil gelesen, welcher nicht zwischen <?php ?> steht.

Das Beispiel wäre hier:
Diese Seite, also der "content" (ohne menu und banner), möchte ich bearbeiten http://test.thnaeff.ch/mytinyarchive/index.php?content=home. Sie enthält zwei Zeilen PHP Code:

  
<?php infobox_start("Übersicht:"); ?>  
...  
<?php infobox_end(); ?>  

und den rest HTML

Im Editor siehts dann so aus:
http://test.thnaeff.ch/mytinyarchive/index.php?content=home&action=edit
nix zu sehen von den PHP-Code-Zeilen, nur das HTML zeugs...

kann mir jemand da weiterhelfen?

mfg

  1. Hi

    Hi

    Ich versuche mit dem FCKeditor eine Datei zu Bearbeiten. Dabei handelt es sich um eine *.php Datei. Wenn ich nun die Datei mit z.B.

    Ich kenne den Editor nicht, aber wenn du die Datei vom Server lädst und das über das HTT-Protokol, dann wird der Server die Datei vorher parsen, d.h. den php-code ausführen und nicht ausliefern.
    Greife über ein anderes (z.B. das FT-) Protokol auf die Datei zu und sie wird korrekt ausgeliefert werden.

  2. Liebe(r) mabuhay,

    file_get_contents("test.php");

    
    > einlese wird aber nur der Teil gelesen, welcher nicht zwischen <?php ?> steht.  
      
    wie sieht's damit aus?  
      
    `$dateiinhalt = implode("", file('test.php'));`{:.language-php}  
      
    Liebe Grüße aus [Ellwangen](http://www.ellwangen.de/),  
      
    Felix Riesterer.
    
    -- 
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
    
  3. Hello,

    Ich versuche mit dem FCKeditor eine Datei zu Bearbeiten. Dabei handelt es sich um eine *.php Datei. Wenn ich nun die Datei mit z.B.

    file_get_contents("test.php");

    
    > einlese wird aber nur der Teil gelesen, welcher nicht zwischen <?php ?> steht.  
      
    Wo läuft der Editor? AUf dem Client?  
    Wer holt die Datei mit file\_get\_contetns()?  
    Durch wen und wie wird sie denn an den Client ausgeliefert?  
      
      
      
      
      
    Harzliche Grüße vom Berg  
    <http://www.annerschbarrich.de>  
      
    Tom
    
    -- 
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen  
    Nur selber lernen macht schlau  
    ![](http://bitworks.de/~selfHTML/Virencheck.gif)  
    
    
    1. Wo läuft der Editor? AUf dem Client?

      Jep, im Browser natürlich

      Wer holt die Datei mit file_get_contetns()?

      xyz = file_get_contents() ist ja PHP Code, wird also auf dem Server ausgeführt

      Durch wen und wie wird sie denn an den Client ausgeliefert?

      Danach wird der Editor mit Inhalt xyz an den Client gesendet... Meinst du dass der Inhalt des Editors evtl. noch geparst wird? Dann sollte doch wenigstens der vom script generierte Teil dortstehen, aber nicht mal das ist der fall.

      mfg
      mabuhay

      1. Hello,

        Danach wird der Editor mit Inhalt xyz an den Client gesendet... Meinst du dass der Inhalt des Editors evtl. noch geparst wird? Dann sollte doch wenigstens der vom script generierte Teil dortstehen, aber nicht mal das ist der fall.

        _das_ solltest Du durch Tests prüfen.
        Kann sein, dass Dein Server kaputt ist (glaub ich nicht)
        Kann sein, dass Dein Editor irgendwas macht, was er nicht soll.
        Ein normaler Browser sollte den File anzeigen, wenn er vorher HTML-gerecht aufbereitet worden ist.
        Und da sehe _ich_ die Fehlermöglichkeit.

        $data = fread($fh, $filesize);
          echo htmlentities($data, ENT_QUOTES);

        http://www.php.net/manual/en/function.htmlentities.php

        Probier mal, ob es dann funktioniert.

        Harzliche Grüße vom Berg
        http://www.annerschbarrich.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau

        1. $data = fread($fh, $filesize);
            echo htmlentities($data, ENT_QUOTES);

          Ja, das sieht schon besser aus. Die PHP-Code Zeilen werden angezeigt. Das Problem ist aber, dass ja jetzt alle spezialzeichen umgewandelt werden. Im Editor hab ich nun in der Textansicht den ganzen Code (ohne newlines), und in der Codeansicht den umgewandelten Code. Die Textansicht sollte aber natürlich immer noch gleich sein, und der PHP Code sollte nur in der Codeansicht sichtbar sein, wenn du verstehtst was ich meine...

          Bin gerade am googeln...