Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Datei Online bearbeiten

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] Datei Online bearbeiten

    Hallo,

    Ich hab ein kleines problem, ich zeigs mal eben.

    Code in der edit.php:
    PHP-Code:
    <?php
    /*  
        Darauf achten, dass die Datei Schreibrechte besitzt. 
    */  
        
    $datei 'test.php';  

    /*  
        Neuer Inhalt speichern  
    */  
    if (isset($_POST['speichern'])) {  
        
    $fp fopen($datei'w');  
        
    /*  
            Doppelte Zeilenumbrüche entfernen  
        */  
        
    $datei1_ str_replace("\n"""$_POST['datei1_']); // -> Evtl. Obacht: Win/Lin/... \n \r\n ... 
        
    $datei1_ stripslashes($datei1_); // Anpassen 

        
    fputs($fp$datei1_strlen($datei1_));  
        
    fclose($fp);  
    }  

    /*  
        Datei in Array einlesen  
    */  
        
    $datei1 file($datei);  

    /*  
        FORMULAR  
    */  
    echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';  
    echo 
    '<textarea cols="60" rows="30" name="datei1_">';  
    echo 
    implode('',$datei1);  
    echo 
    '</textarea>';  
    echo 
    '<br>';  
    echo 
    '<input type="submit" name="speichern" value="speichern">';  
    echo 
    '</form>';  

    /*  
        Testausgabe  
    */  
    echo '<font size="3">Vorschau:</font>'
    echo 
    '<br><br>'
    echo 
    nl2br(implode('',$datei1));  
    ?>
    Und in der php Datei soll dieser Code stehen:
    PHP-Code:
    <b>Tag:</b> <font color="#808000">&lt;base&gt;</fontText <font color="#808000">
    &
    lt;/base&gt;</font
    Wenn nun aber die zu veränderte Datei in das textarea eingelesen wird steht nun aber nicht mehr:
    <b>Tag:</b> <font color="#808000">&lt;base&gt;</font> Text <font color="#808000">
    &lt;/base&gt;</font>

    sondern:
    <b>Tag:</b> <font color="#808000"><base></font> Text <font color="#808000"></base></font>

    Was muss ich ändern damit der Unicode richtig eingelesen wird?
    also das "&lt;" auch "&lt;" bleibt.

    Ich danke schon mal herzlich.

  • #2
    Womit siehst du dir die test.php denn an? Mitm Browser?

    Kommentar


    • #3
      Ja mit einem Browser.

      Ich hab die Tags nur hier ganz ausgeschieben.

      Das problem ist das in der Textarea nicht &lt; steht sondern <.
      Das möchte ich eben nicht.

      weißt du jetzt was ich meine?

      Kommentar


      • #4
        Das heisst Rechtsklick-> Quelltext anzeigen zeigst so an wie du es haben willst oder nicht?

        Kommentar


        • #5
          Genau, es soll eben der reine quelltext in die Textarea gelesen werden.
          eben:
          PHP-Code:
          <b>Tag:</b> <font color="#808000">&lt;base&gt;</fontText <font color="#808000">&lt;/base&gt;</font><br
          und nicht:
          PHP-Code:
          <b>Tag:</b> <font color="#808000"><base></fontText <font color="#808000"></base></font><br
          ..
          Was aber beim Einlesen in die Textarea der fall ist.
          Die Codes &lt;.usw. werden leider immer zu <.

          Kommentar


          • #6
            Dann musst du aus &lt; z.B. &amp;lt; machen. Dazu kannst du htmlentities() suchen.

            Kommentar


            • #7
              oki, ich danke dir.

              Ich werd mal schauen wie ichs hin bekomme.

              Kommentar


              • #8
                Hi,

                ich hab nun unter
                PHP-Code:
                echo implode('',$datei1); 
                dieses gesetzt:
                PHP-Code:
                echo htmlentities('&lt;'); 
                Das &lt; bleibt zwar nun und wird nicht ausgewechselt, dafür setzt sich das < vor das bestehende &lt; wenn ich auf abschicken klicke.

                Hab ich was falsch gemacht?

                Kommentar


                • #9
                  Hi


                  Ich glaub ich hab den Tag nen schlechten Tag gehabt^^

                  Hätt es doch einfach nur mit
                  PHP-Code:
                  echo htmlentities(implode('',$datei1)); 
                  ersetzen müssen
                  2Tage Urlaub bringt doch was


                  Ich danke noch mal herzlich.

                  Grüße

                  Kommentar


                  • #10
                    Dann den Thread bitte noch als [Erledigt] markieren. Danke!

                    Kommentar


                    • #11
                      Hättest du 1 sekunde gewartet, hättest du gesehen das ich 1 sekunde später dieses getahn hatte

                      trotzdem danke

                      Kommentar


                      • #12

                        Kommentar

                        Lädt...
                        X