Michael: 1 Formular - 2 Actions?

Ich möchte mit zwei verschiedenen Submit-Buttons den Inhalt eines Formulars einmal an Skript A und und ein anderes Mal an Skript B verschicken (genauer gesagt: Das Formular soll einmal gemailt und ein anderes Mal als Text ausgegeben werden). Gibt es die Möglichkeit, unterschiedlichen Submit-Buttons unterschiedliche Actions innerhalb desselben Formulars zuzuweisen oder - nicht?

  1. Hallo,
    Ich sehe den Sinn nicht so ganz. Wenn Du beides zusammen willst könnte es _ein_ Script erledigen. Wenn Du den User entscheiden lassen möchtest was geschehen soll könntest Du das über einen Radiobutton, der dann das Script entsprechend ablaufen läßt.

    Grüße aus Bayreuth
    Julian

    1. Ich sehe den Sinn nicht so ganz. Wenn Du beides zusammen willst könnte es _ein_ Script erledigen. Wenn Du den User entscheiden lassen möchtest was geschehen soll könntest Du das über einen Radiobutton, der dann das Script entsprechend ablaufen läßt.

      Grüße aus Bayreuth
      Julian

      Schon klar, daß das_ein_ Skript erledigen kann. Was aber (und daran dachte ich eigentlich), wenn der User Skript A benutzt - mit dem ich nichts zu tun habe - und ich ihm aber zusätzlich
      mein Skript B zur Benutzung anbieten möchte?
                                                             trotzdem danke für die Antwort
                                                             Michael

      1. Hi,

        Schon klar, daß das_ein_ Skript erledigen kann. Was aber (und daran dachte ich eigentlich), wenn der User Skript A benutzt - mit dem ich nichts zu tun habe - und ich ihm aber zusätzlich
        mein Skript B zur Benutzung anbieten möchte?

        äh... häh?
        Wieso hast Du mit den Inhalten Deiner Homepage nichts zu tun? Was soll das mit dem Anbieten? Wieso "benutzt" der User ein bestimmtes Script?

        Sorry, aber ich verstehe nur Bahnhof. Könntest Du etwas konkreter werden?

        Cheatah

        1. Hi,

          Schon klar, daß das_ein_ Skript erledigen kann. Was aber (und daran dachte ich eigentlich), wenn der User Skript A benutzt - mit dem ich nichts zu tun habe - und ich ihm aber zusätzlich
          mein Skript B zur Benutzung anbieten möchte?

          äh... häh?
          Wieso hast Du mit den Inhalten Deiner Homepage nichts zu tun? Was soll das mit dem Anbieten? Wieso "benutzt" der User ein bestimmtes Script?

          Sorry, aber ich verstehe nur Bahnhof. Könntest Du etwas konkreter werden?

          Cheatah

          Hallo Cheatah,
          1.) Ich habe nicht von "Inhalten meiner Homepage" gesprochen, sondern von einem Skript,
          mit dem ich nichts zu tun habe.
          2.) Es geht eben nicht um "meine Homepage", sondern es geht darum, daß irgendein User auf irgendeiner Seite ein Formular hat und mit ZWEI unterschiedlichen Submit-Buttons auf seinem Formular ZWEI unterschiedliche Actions ausführen sollte - einmal auf ein Skript, das ich nicht zu kennen brauche und das mich daher auch nicht interessiert, mit dem zweiten Button auf  ein Skript, das ich auf einer CGI-Schnittstelle hoste und zum (freien?) Gebrauch anbiete.
          3.) Anbieten heißt einfach nur Anbieten. Ich sage:"Hier ist ein CGI-Skript. Benutzt es in eurer Page, wenn ihr es gebrauchen könnt." Und damit habe ich etwas angeboten.
          4.) In dem Augenblick, wo ein User ein CGI-Skript über den Submit-Button in Anspruch nimmt, "benutzt" er es. Oder welche Bedeutung gewinnst Du dem Wort "Benutzen" ab? ;-)

          1. Hi,

            1.) Ich habe nicht von "Inhalten meiner Homepage" gesprochen, sondern von einem Skript,
            mit dem ich nichts zu tun habe.

            aha... das ist aber ganz schlecht. Du wirst nämlich vermutlich in das Script eingreifen müssen.

            2.) Es geht eben nicht um "meine Homepage", sondern es geht darum, daß irgendein User auf irgendeiner Seite ein Formular hat und mit ZWEI unterschiedlichen Submit-Buttons auf seinem Formular ZWEI unterschiedliche Actions ausführen sollte - einmal auf ein Skript, das ich nicht zu kennen brauche und das mich daher auch nicht interessiert, mit dem zweiten Button auf  ein Skript, das ich auf einer CGI-Schnittstelle hoste und zum (freien?) Gebrauch anbiete.

            Ah, jetzt kommen wir der Sache näher!

            3.) Anbieten heißt einfach nur Anbieten. Ich sage:"Hier ist ein CGI-Skript. Benutzt es in eurer Page, wenn ihr es gebrauchen könnt." Und damit habe ich etwas angeboten.

            Danke, das war mir nicht klar. Wenn ich das jetzt aber richtig verstehe bist Du selbst nur Vermittler, das Script bietet aber wieder jemand anders an, oder?

            4.) In dem Augenblick, wo ein User ein CGI-Skript über den Submit-Button in Anspruch nimmt, "benutzt" er es. Oder welche Bedeutung gewinnst Du dem Wort "Benutzen" ab? ;-)

            Ich wollte darauf hinaus, ob der User Deine Seite besucht, oder ob jemand ein Script von Deinem Server für seine Seiten beansprucht :-)

            Also, da Du die Action eines Formulars nicht dynamisch ändern kannst, kannst Du nur mit zwei unterschiedlichen Submit-Buttons gleichen Namens aber unterschiedlichen Values (z.B.) das gleiche Script ansprechen. In diesem muß dann entsprechend abgefragt werden, d.h. Du mußt den Scriptcode verändern.

            Mir fällt nur eine einzige, sehr unsichere und recht umständliche Alternative ein:
            Schreibe das Formular doppelt, allerdings das zweite nur mit lauter hidden-Feldern (außer Submit natürlich). onSubmit kopierst Du dann die Values von einem Formular ins andere.

            War es das, was Du wolltest?

            Cheatah

  2. Hi Michael

    Ich möchte mit zwei verschiedenen Submit-Buttons den Inhalt eines Formulars einmal an Skript A und und ein anderes Mal an Skript B verschicken (genauer gesagt: Das Formular soll einmal gemailt und ein anderes Mal als Text ausgegeben werden). Gibt es die Möglichkeit, unterschiedlichen Submit-Buttons unterschiedliche Actions innerhalb desselben Formulars zuzuweisen oder - nicht?

    Die Actions kannst du nicht aendern, aber du kannst jedem submit-button noch einen spez. Namen geben:

    <input type="submit" name="sendmail" value="Per Email senden">
    <input type="submit" name="showtext" value="Text anzeigen">

    Im Script ueberpruefst du nun, ob es entweder den Wert 'sendmail' oder 'showtext' gibt und fuehrst dann das Entsprechende aus.

    Gruss,
    Beat