Axel: CGI-Skript aus javascript heraus starten

Hallo,

kann ich ein cgi-Skript bzw. ein auf dem Server liegendes perl-Skript mit javascript starten, diesem Argumente übergeben, ohne dass sich auf dem Bildschirm etwas ändert?

Bsp.:

Ich möchte über ein Formular Daten abfragen. Bei jeder Änderung sollen diese sofort in einer mysql-Datenbank abgelegt werden, ohne dass der Nutzer etwas merkt. Er soll in Ruhe die restlichen Formularfelder ausfüllen dürfen. Am Ende ist alles abgespeichert, ohne dass der Benutzer einmal eine Taste "Speichern" drücken muss. Geht das?

Axel

  1. Hi,

    kann ich ein cgi-Skript bzw. ein auf dem Server liegendes perl-Skript mit javascript starten,

    nein. JavaScript hat keinen Zugriff auf Ressourcen. Es kann maximal dem Browser die Information übermitteln, dass _dieser_ eine Ressource anfordern soll. Ob es sich dabei um ein CGI-Script handelt, interessiert nur Deinen Server.

    diesem Argumente übergeben,

    Nein, aber Parameter.

    ohne dass sich auf dem Bildschirm etwas ändert?

    Was das CGI-Script zurückliefert, wird vom Client auch verarbeitet. Es gibt verschiedene Wege, dies möglichst effektarm zu gestalten.

    Ich möchte über ein Formular Daten abfragen. Bei jeder Änderung sollen diese sofort in einer mysql-Datenbank abgelegt werden, ohne dass der Nutzer etwas merkt.

    Dein Konzept versagt spätestens dann, wenn der User JavaScript deaktiviert hat. Du musst stets damit rechnen, dass die Aktualität Deiner Daten nicht gegeben ist - und kannst es ergo auch gleich lassen. Zudem spart das Traffic und Rechnerlast. Bedenke *bitte* auch, dass manche Leute für ihren Traffic zu bezahlen haben.

    Oder offline gehen, solange sie nicht online sein müssen.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
  2. Hi Axel,

    kann ich ein cgi-Skript bzw. ein auf dem Server liegendes perl-Skript mit javascript starten, diesem Argumente übergeben, ohne dass sich auf dem Bildschirm etwas ändert?

    im Gegensatz zu Cheatah antworte ich hier mit "ja" (in unsichtbaren Frames. Mit allen Nachteilen, welche dieses Modell mit sich bringt - ich weiß, wovon ich hier rede ...).

    Ich möchte über ein Formular Daten abfragen. Bei jeder Änderung sollen diese sofort in einer mysql-Datenbank abgelegt werden, ohne dass der Nutzer etwas merkt. Er soll in Ruhe die restlichen Formularfelder ausfüllen dürfen. Am Ende ist alles abgespeichert, ohne dass der Benutzer einmal eine Taste "Speichern" drücken muss. Geht das?

    Hältst Du das für benutzerfreundlich?
    Ich nicht - denn es verstößt gegen alle Bedienungskonzepte, die der Anwender gewohnt ist.
    (Und nebenbei auch gegen die Prinzipien von HTTP als request-orientiertes Protokoll - das ist nun mal keine "Standleitung". Wenn Du eine solche willst, dann schreibe Dir ein Java-Applet mit einem proprietären Kommunikationsprotokoll.)

    Als Anwender klicke ich viel lieber einmal auf "Speichern" (denn ohne eine explizite Aktion, welcher Art auch immer, werde ich diese Seite ohnehin nicht verlassen _wollen_), als daß ich meinem Browser ein "Eigenleben" gönnen möchte.

    Ich empfehle Dir dringend die aktuelle Kolumne von Jacob Nielsen als Lektüre, welche genau auf solche GUI-Phantasien wie die Deine eingeht:

    http://www.useit.com/alertbox/20030421.html

    Viele Grüße
          Michael

    --
    T'Pol: I apologize if I acted inappropriately.
    V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
    (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)
    Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen.