Andi: Datensätze in *.text files wegschreiben und wieder auslesen

Hello,

Du legst jezt mal fest, welche Datenfelder du benötigst

Feldname enthält
laufende Nummer 0-9
Datum 0-9 .
Titel Ziffern und Buchstaben (inkl. Umlate und
Satzzeichen
Inhalt Ziffern und Buchstaben (inkl. Umlaute) und
Satzzeichen und Sonderzeichen
Name des Autors Ziffern und Buchstaben (inkl. Umlaute) und

Kommt in einem dieser Felder ein Zeilenumbruch vor oder könnte eine MÜ drinstehen?

Es braucht im Prinzip kein Zeilenumbruch stehen, weil die Html Tabelle richtet sichs dann eh her wie sie es braucht, das gibt sonst wieder nur formatschwierigkeiten mit HTML!

Und welches zeichen wir erübrigen können aus dem Zeichsatz für die Trennung der Felder innerhalb des Satzes.

ich denke µ dürfte den dienst gut erfüllen!

Ich plädiere dazu, ein chr(4) für die Trennung der Felder zu benutzen und ein chr(127) für den Fall, dass in einem Datenwert ein Zeilenumbruch vorkommen muss. Das hat sich bewährt. Weder #127 noch #4 lassen sich auf normalem Wege über den Browser in die Datenwerte bringen, und sie hätten auch keinen echten Nutzen. Also können wir die Daten zur Sicherheit erst von diesen Zeichen befreien. Sollten doch welche vorkommen, dann hat der User gemogelt und wir können sie entweder irreversibel durch #32 (Leerzeichen) ersetzen, oder wir brechen mit einer DuDu-Meldung ab.

Gibt es eine Tabelle für die ganzen chr(x)?? Ist ein bisschen verwirrend!!

In Textareas kommen mit Vorliebe Zeilenumbrüche vor. Die erstezen wir dann gegen #127. Dann addieren wir die Felder zu einem String, immer durch #4 getrennt. An das Ende des Strings hängen wir unsere Konstante N und fertig ist der Datensatz.

Es hat sich bewährt, wenn alle abzuspeichernden Daten im Formular bereits als Array vorbereitet werden.

<input type="text" ... name="data[author]">
  <input type="text" ... name="data[title]">
  <textarea name="data[text]"></textarea>

usw.

Dann kann man nämlich im Script alles per Schleife abarbeiten lassen.

Die daten kommen dan ja in

$_POST['data']['author']
$_POST['data']['title']
$_POST['data']['text']

an, und man kann wunderschön mit foreach($_POST['data'] as $val) arbeiten...

Ok die arrays werden dann also in $val gespeichert. Das was mir jetzt noch unklar ist:

  • wie setze ich die trennzeichen
  • wie schreibe ich die einzelnen Arrays in ihre Felder?
  • wie lese ich die Arrays aus ihren Felder wieder aus und gebe sie korrekt in einer html tabell wieder aus?

thx lg Andii

  1. Hello,

    warum Doppelposting?

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau
    1. Hello,

      warum Doppelposting?

      war mir nicht sicher obst mich da unten wieder findest außerdem hat sich der inhalt mittlerweile sehr geändert und passte nicht mehr zum titel

      Lg Andi

      1. hi,

        war mir nicht sicher obst mich da unten wieder findest

        auf jeden fall.
        doppelpostings erhöhen die antwortbereitschaft hier kein bisschen, eher im gegenteil.

        außerdem hat sich der inhalt mittlerweile sehr geändert und passte nicht mehr zum titel

        titel kann man ändern.
        (zuerst vorschau generieren, dann neuen titel eingeben.)

        gruß,
        wahsaga

        --
        [ Hier könnte Ihre Werbung stehen! ]
        1. hi,

          war mir nicht sicher obst mich da unten wieder findest

          auf jeden fall.
          doppelpostings erhöhen die antwortbereitschaft hier kein bisschen, eher im gegenteil.

          außerdem hat sich der inhalt mittlerweile sehr geändert und passte nicht mehr zum titel

          titel kann man ändern.
          (zuerst vorschau generieren, dann neuen titel eingeben.)

          ok dankeschön für den hinweiß wollte niemanden verärgern sorry

          Lg Andi