Andreas: ASCII-Dateien schreiben

Hallo,

gibt es eine Möglichkeit mit html Text in ASCII-Dateien zu schreiben bzw. den Inhalt zu löschen?!

Ich habe an ein Formular mit POST gedacht, weiß aber nich wie ich das ganze in die Datei bekomme

Das ganze muß ohne Perl/CGI oder PHP auskommen.

mfg
Andreas

  1. Hallo Andreas.

    gibt es eine Möglichkeit mit html Text in ASCII-Dateien zu schreiben bzw. den Inhalt zu löschen?!
    Das ganze muß ohne Perl/CGI oder PHP auskommen.

    Nur mit HTML: nein.
    Ohne Perl/PHP: ja, wenn es eine andere Programmiersprache sein darf.
    Ganz ohne Programmiersprache: absolut nein.

    Freundschaft!
    Siechfred

    1. Hallo,

      danke für die schnellen Antworten,

      das Problem ist, das der Webserver(thttpd) auf einem embedded-Computer läuft und da ist das mit dem Speicher so ne sache. Die 1,5 MB die ich für (ein unvolständiges Perl) brauche sind eigentlich schon zuviel, da der PC nur eine Flashdisc mit 6MB hat. Wir wird das eigentlich in WLAN-Router etc. gelöst?

      mfg
      Andreas

      1. Hi,

        da der PC nur eine Flashdisc mit 6MB hat.

        Dann hast Du ein Hardware-Problem.
        Versuche mal eine abgespeckte PHP-Installation (für reine Dateiverarbeitung dürfte auch Perl mit weniger als 1,5 MB auskommen, da außer CGI wohl kaum ext. Module nötigt sind) oder plaziere das Script auf einem anderen Server (u. verlinke es, bzw. führe es darauf aus), der mehr Speicher hat...

        freundlichen Gruß
        Danny

        --
        Selfcode: fo:) br:& n4:& ie:% mo:) va:| de:] zu:) fl:| ss:) ls:& ls:& js:|
        Motto:    OpenSource - Das Wissen der Menschheit gehört der Welt!
        1. Hi,

          Ich habe von Suse 6.4 einfach die Datei "perl" und 2 Bibliotheken die Perl zum ausführen braucht auf den ePC kopiert. Perl selbst braucht nur etwa 700k aber die eine Bibliothek braucht noch ca 800k. Externer Server wird schwierig, da der ePC ähnliche Funktionalitäten haben soll wie z.B. WLAN-Router.

          Was komisch ist, Perl ansich funktioniert. Wenn ich aber "use strict" bzw. den Code für die Fehlerausgabe in den Browser in das Script schreibe wird es nicht audgeführt. Wird dafür eine extra Bibliothek gebraucht?

          mfg
          Andreas

          1. Moin,

            wenn du Linux hast, versuchs doch mal mit nem shell-script (bash etc.). Spart dir die Installation von Perl.

            cu mipu

            1. Hi,

              wie kann ich von einem Browser aus Daten mit einem shell Script in eine Datei schreiben??? *staun*

              1. Hi,

                wie kann ich von einem Browser aus Daten mit einem shell Script in eine Datei schreiben??? *staun*

                äh, ich hätte wohl vor dem posten nochmal kurz das hirn einschalten sollen :)

                hast natürlich recht, ich hatte nur andersherum gedacht : per script ascii/html erzeugen

                vergiss es :))

                1. Hi,
                  wirst dich wundern,

                  gib mal folgendes in eine script ein, leg sie ausführbar!!! auf deinen webserver und ruf sie dann im browser auf:

                  #!/bin/bash
                  echo "Content-Type: text/html"
                  echo ""

                  echo "Test"

                  ps ax

                  _____________________________________________________
                  Das ps ax is bloß mal so zum spaß ;-). Auf meinem Webserver wird das ganze ausgeführt *freu* Jetzt muß ich das bloß noch interaktiv hinbekommen.

                  mfg
                  Andreas

                  1. Hi,

                    gib mal folgendes in eine script ein, leg sie ausführbar!!! auf deinen webserver und ruf sie dann im browser auf:

                    #!/bin/bash
                    echo "Content-Type: text/html"
                    echo ""

                    echo "Test"

                    ps ax

                    _____________________________________________________
                    Das ps ax is bloß mal so zum spaß ;-). Auf meinem Webserver wird das ganze ausgeführt *freu* Jetzt muß ich das bloß noch interaktiv hinbekommen.

                    Und vor allem etwas mehr nach Vorschrift:

                    ---snip---
                    #!/bin/sh

                    date=date -u '+%a, %d %b %Y %H:%M:%S %Z'

                    cat << EOF
                    Content-type: text/plain
                    Expires: $date

                    EOF

                    echo Schreibe in Datei foobar
                    echo "bla" > foobar
                    ls -l
                    echo Lese aus Datei foobar
                    cat foobar

                    echo
                    if [ "$CONTENT_LENGTH" != "" ] ; then
                        if [ "$CONTENT_LENGTH" -ne 0 ] ; then
                     echo 'Input:'
                     echo
                     dd bs=1 count=$CONTENT_LENGTH
                     echo
                        fi
                    fi
                    ---snap---

                    $ telnet localhost 80
                    GET /cgi-bin/printenv HTTP/1.0

                    HTTP/1.0 200 OK
                    Content-type: text/plain
                    Expires: Wed, 18 Aug 2004 08:37:32 UTC

                    Schreibe in Datei foobar
                    printenv: foobar: Permission denied
                    total 4692
                    -rwxr-xr-x    1 root     root      1622083 Aug 18 09:57 phf
                    -r-xr-xr-x    1 root     root          431 Aug 18 10:34 printenv
                    -rwxr-xr-x    1 root     root      1564839 Aug 18 09:57 redirect
                    -rwxr-xr-x    1 root     root      1602281 Aug 18 09:57 ssi
                    Lese aus Datei foobar
                    cat: foobar: No such file or directory

                    Connection closed by foreign host.

                    Wie Du siehst: _ganz_ so einfach ist das nicht ;-)

                    Für CGI mit Shellscripten hat übrigens schon jemadn 'was gebastelt, nur ist das nicht mehrzu finden ... ah, Google sei dank, es gibt jede Menge Kopien ;-)
                    Erster Link bei Google:
                    http://darkwing.uoregon.edu/~jqj/cgi-bin/proccgi.c
                    Diese Kopie ist ncht sauber, in Zeile 166
                    fprintf (stdout, "%s="", data, p2=ptr+1);
                    Ist nicht ganz korrekt, muß
                    fprintf (stdout, "%s="", data);p2=ptr+1;
                    heißen.

                    ---snip---
                    #!/bin/sh

                    date=date -u '+%a, %d %b %Y %H:%M:%S %Z'

                    cat << EOF
                    Content-type: text/plain
                    Expires: $date

                    EOF
                    if [ "$CONTENT_LENGTH" != "" ] ; then
                        if [ "$CONTENT_LENGTH" -ne 0 ] ; then
                     QUERY=dd bs=1 count=$CONTENT\_LENGTH 2>/dev/null
                        fi
                    fi
                    echo QUERY = "$QUERY"
                    ---snap---
                    $ telnet localhost 80
                    Trying ::1...
                    Connected to localhost.
                    Escape character is '^]'.
                    POST /cgi-bin/printenv HTTP/1.0
                    Content-Type: application/x-www-form-urlencoded
                    Content-Length: 10

                    HTTP/1.0 200 OK
                    Content-type: text/plain
                    Expires: Wed, 18 Aug 2004 10:08:30 UTC

                    test=12345
                    QUERY = "test=12345"
                    Connection closed by foreign host.

                    Was Du mit dem String dann anfängst bleibt Dir überlassen ;-)

                    so short

                    Christoph Zurnieden

          2. Hallo Andreas.

            Wenn ich aber "use strict" bzw. den Code für die Fehlerausgabe in den Browser in das Script schreibe wird es nicht audgeführt. Wird dafür eine extra Bibliothek gebraucht?

            Für die Fehlerausgabe an den Browser brauchst du das Modul Carp.pm, strict ist ein Pragma, wofür m.W.n. kein Modul benötigt wird. Allerdings ist sehr fraglich, ob du die Funktionalitäten von Carp benötigst, wenn das Script fertig ist, denn es sollte dann auch ohne diese Funktionalitäten auskommen (was interessieren den Betrachter Fehlermeldungen, ihm sollte die Info genügen, dass ein Fehler aufgetreten ist).

            Freundschaft!
            Siechfred

  2. Hi,

    HTML ist keine Programmiersprache, daher kann man auch keine Dateiverarbeitung damit machen. Javascript stellt aus Sicherheitsgründen auch keine Funktionen dafür bereit.

    Die einzige mir bekannte Möglichkeit ist eine serverseitige Lösung/ Programmiersprache. Evtl. könnte auch was per Active-X oder anderem Plugin machbar sein aber davon würde ich die Finger lassen...

    freundlichen Gruß
    Danny

    --
    Selfcode: fo:) br:& n4:& ie:% mo:) va:| de:] zu:) fl:| ss:) ls:& ls:& js:|
    Motto:    OpenSource - Das Wissen der Menschheit gehört der Welt!