Ankündigung

Einklappen
Keine Ankündigung bisher.

Bestimmt Teile eines .txt Files in Formular öffnen und bearbeiten

Einklappen

Neue Werbung 2019

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

  • Bestimmt Teile eines .txt Files in Formular öffnen und bearbeiten

    Ich möchte gerne mit PHP ein .txt file öffnen, bestimmte Teile daraus in verschiedene Formular-Text-Input Felder geben und diese bestimmten Teile aus dem .txt so veränderbar machen.

    In etwa also so wie im Code unten, nur dass nur bestimmte Teile aus dem .txt File ins Formular geladen werden sollen. Zum besseren Verständnis hier ein Beispiel: Das .txt File hat immer die selbe Struktur, hier der ganze Inhalt

    data1="first text";data2="second text";data3="third text";

    Ich möchte nur jeweils die Teile zwischen den Anführungszeichen öffnen (fett gedruckt)! Im Formular sollte also in einem ersten Textfeld first text, im zweiten second text und im dritten third text stehen.

    Ändere ich dann im Formularfeld den Text und klicke auf submit, sollte das .txt File upgedated werden. Schreibe ich zum Beispiel ins erste Feld anstatt first text nun test, sollte das .txt File folgenden Inhalt haben:

    data1="test";data2="second text";data3="third text";

    Ich möchte das ganze ohne Datenbank lösen, kann mir jemand helfen? Vielen Dank jetzt schon.

    PHP-Code:
    <?
    if($_POST['Submit']){
    $open = fopen("test.txt","w+");
    $text = $_POST['update'];
    fwrite($open, $text);
    fclose($open);
    echo "File updated.<br />"; 
    echo "File:<br />";
    $file = file("test.txt");
    foreach($file as $text) {
    echo $text."<br />";
    }
    echo "<p><a href=\"./livepage.php\">click here to view the live updated webpage</a></p>";
    echo "<p><a href=\"./mainadminpage.php\">click here to view the admin menu</a></p>";
    }else{
    $file = file("test.txt");
    echo "<form action=\"".$PHP_SELF."\" method=\"post\">";
    echo "<textarea Name=\"update\" cols=\"50\" rows=\"10\">";
    foreach($file as $text) {
    echo $text;

    echo "</textarea>";
    echo "<input name=\"Submit\" type=\"submit\" value=\"Update\" />\n
    </form>";
    }
    ?>

  • #2
    data brauchste nicht, du hast ein csv:
    http://www.selfphp.de/praxisbuch/pra...e=222&group=38

    Kommentar


    • #3
      Hat er nicht, das was dem nahe kommt ist ein semicolon separiertes ini format.
      [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

      Kommentar


      • #4
        jetzt spinnt nicht nur der kopf, sondern auch in ihm die augen

        zum glück kannman den "delimiter" mitgeben, bei fgetcsv() und ähnlichem, denn durchaus gebräuchlich scheinen auch: Semikolon, Doppelpunkt, Tabulator, Leerzeichen (wikipedia).

        mit dem ini-format hast du recht, wobei ich ihn ja dazu ermuntern will diese data-x= zu lassen, es bringt mE. nichts. Dann wären wir bei einem nicht RFC-4180 konformen csv mit semikolon als trennzeichen.

        Kommentar


        • #5
          Danke für die Antworten. Ich kann das data1=""; Format nicht lassen, ich muss das genau in dieser Form anlegen, da das ganze dann von einer Software weiterverarbeitet wird, die nur genau dieses Format lesen kann. CSV bringt mich in dem Fall also auch nicht weiter glaub ich.

          Kann man nicht irgendwie den pointer so setzen, dass er den Inhalt nach data1=" bis zum nächsten Anführungszeichen packt und dann in ein Input-Feld packt, für die anderen halt entsprechend ab data2=" usw.

          Kommentar

          Lädt...
          X