Andreas: html-form mehrfach verwenden

Hi,

ich programmiere gerade einen kleinen E-Mailer und will jetzt eine Checkbox mehrfach verwenden, also:
in der Emailübersicht ist vor jeder mail eine checkbox. Klick man die an will man also eine Aktion für diese Mail durchführen. Je nachdem was man danach anklickt (z.B. löschen, als ungelesen markieren, dies soll jeweils die form mit submit abschicken) soll die form verschiedene actions ausführen. Geht sowas?

  1. morgens,

    Je nachdem was man danach anklickt [...] soll die form verschiedene actions ausführen. Geht sowas?

    Nein. Formen sind Formen (z.B. bei Covergirls), Förmchen sind Förmchen (z.B. im Sandkasten) und Formulare sind Formulare (z.B. als HTML-Elemente). Ihnen allen ist gemeinsam, daß sie überhaupt nichts "ausführen" können.

    Allerdings: Sofern du ein Formular gemeint haben solltest, kann eine Benutzeraktion etwas auslösen, also beispielsweise eine "action" einleiten. Das Formular hat eigentlich nur die Aufgabe eines Containers, der die eventuellen Tippfehler eines Benutzers als markante Eingaben aufbewahrt und gegebenenfalls weiterreicht.

    "Verschiedene Actions" kann also dein Formular in gar keiner Weise selbst ausführen. Aber du kannst natürlich in dem Script, das die Eingaben des Formulars verarbeiten soll, durchaus verschiedene Reaktionsweisen festlegen, je nachdem, was der Besucher/Benutzer eingetragen und wieviele Tippfehler er gemacht hat.

    Ein wirklich zielführender Hinweis oder Rat kann dir allerdings erst dann gegeben werden, wenn du ein klitzekleines bißchen von deinem Quelltext zeigst, so daß man ungefähr sehen kann, was du meinst. Dabei ist das Formular selbst zwar ein HTML-Element, aber die Verarbeitung muß mit irgendeiner serverseitigen Technik geschehen. Welche du gewählt hast, müßtest du bitte noch angeben.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    http://www.christoph-schnauss.de
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
    1. ok sorry da war ich wohl etwas zu oberflächlich.
      was mir vollkommen klar ist:
      ich habe 1 Formular, eine checkbox und übertrage die Daten mittels
      GET indem ich submit aufrufe (der user klickt auf delete). Ich kann dann den Parameter action abfragen und wenn dieser "delete" ist kann ich gewisse Sachen asuführen.

      echo '<form name=msg ACTION='.$_SERVER['PHP_SELF'].'?action=delete>
            <input TYPE='checkbox' class=check NAME='box'></form>';

      echo "<a href='javascript:document.msg.submit()'>delete</a>";

      Nun will ich aber wieder genau eine checkbox, aber 2 Submit-Buttons die jeweils einen anderen Parameter (statt delete bsp. mark) übertragen:

      echo '<form name=msg ACTION='.$_SERVER['PHP_SELF'].'?action=delete>
            <input TYPE='checkbox' class=check NAME='box'></form>';

      echo "<a href='javascript:document.msg.submit()'>delete</a>";
      echo "<a href='javascript:document.msg.submit()'>mark as unread</a>";

      1. hallo,

        mit javascript kannst du das action-ziel des forms anpassen...;

        document.getElementById['formid'].action='test.php?delete'

        in der art,

        frankx

      2. Nun will ich aber wieder genau eine checkbox, aber 2 Submit-Buttons die jeweils einen anderen Parameter (statt delete bsp. mark) übertragen:

        echo '<form name=msg ACTION='.$_SERVER['PHP_SELF'].'?action=delete>
              <input TYPE='checkbox' class=check NAME='box'></form>';

        echo "<a href='javascript:document.msg.submit()'>delete</a>";
        echo "<a href='javascript:document.msg.submit()'>mark as unread</a>";

        Warum JS?

        in so einem Falle reicht es doch einfach 2 Unterschiedliche Submitbuttons zu verwenden.

        <input type="submit" name="delete" value="löschen">
        <input type="submit" name="mark" value="mark us unread">

        und in deiner Andwendung entsprechend reagieren.

        Struppi.

  2. Moin,

    nachdem ich die restlichen Postings gelesen habe und ungefähr verstanden habe, was du machen möchtest ...

    Ich würde dir vorschlagen, mach's nicht komplizierter als nötig. Mach *ein* Formular mit *einem* action-Attrubut. In dieses Formular packst du einfach mehrere Submit-Buttons mit unterschiedlichen Bezeichnungen. Dann kann dein PHP- oder Perl-Script (oder was auch immer für ein Script auf dem Server die Sache verarbeitet) erst einmal nachsehen, *welcher* Submit-Button gedrückt wurde und danach die entsprechenden Schritte ausführen.

    Und lass bitte solchen Unsinn wie

    <a href='javascript:document.msg.submit()'>delete</a>
    <a href='javascript:document.msg.submit()'>mark as unread</a>

    Was soll der Quatsch? Du willst das Formular absenden, dafür gibt es Submit-Button. Da muss man nicht ein a-Element vergewaltigen und submit() mit Javascript ausführen. *schüttel*

    Schönen Tag noch,

    Martin