<input type="hidden/text" name="submit">

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • <input type="hidden/text" name="submit">

    Hallo,

    Code:
    <input type="hidden" name="submit"> bzw. <input type="text" name="submit">
    führt in Zusammenhang mit einem Submit per JS zu einem Fehler, sprich das Forumlar wird einfach nicht submittet.

    Frage: Gibt es eine Workaround, wenn der Button nicht submit heißen soll? Kann es auch zu anderen Problemen führen? (versch. Browser, etc..).

    Hintergrund:

    Ich habe in allen Scripten mit Forumlareingaben die Einteilung
    PHP-Code:
    if (isset($_POST['submit'])) {
        ..
    } else {
        ..
        echo 
    '<input type="submit" name="submit">';

    Wird nun ein Formular nicht mit der Maus sondern mit der Entertaste submittet, kann(!) es geschehen, dass $_POST['submit'] nicht zur Verfügung steht. (wann das genau der Fall ist und wann nicht habe ich noch nicht ganz durchschaut).

    .. Also habe ich mir überlegt, dem Submit-Button einen anderen Namen zu geben und ein Hidden-Field mit Namen "submit" einzufügen. (bräuchte dann nur eine template-datei anzupassen).

    Gruß,
    Syco
    [COLOR=darkblue].: 1+1=23 :.[/COLOR]

  • #2
    wenn du den button dazu missbrauchen wissen, um im script zu unterscheiden was passiert ist, kann man mehrere type="submit" 's nehmen und mit name="fkt1" unterscheiden.

    aber was genau du willst, weiss ich nicht.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Re: &lt;input type=&quot;hidden/text&quot; name=&quot;submit&quot;&gt;

      Original geschrieben von syco23
      führt in Zusammenhang mit einem Submit per JS zu einem Fehler, sprich das Forumlar wird einfach nicht submittet.
      Ja, das ist leicht zu erklären.

      Jedes Formularelement kannst du über document.formularname.feldname ansprechen - diese JS-Objekte werden automatisch aus deinen Formularfeldern erzeugt, stehen dir immer zur Verfügung.
      Außerdem hat ein Formular von Haus aus eine Methode submit, die über document.formularname.submit() angesprochen werden kann.

      Was passiert jetzt, wenn du einem Formularelement den Namen "submit" gegeben hast?
      Richtig, es wird automatisch document.formularname.submit angelegt - und damit die Methode submit überschrieben.
      Wenn du jetzt noch versuchst, diese aufzurufen, bekommst du eine Meldung in der Art "document.formularname.submit ist not a function". Korrekt, document.formularname.submit ist ja jetzt die Referenz auf dein Formularelement mit dem Namen "submit".
      Frage: Gibt es eine Workaround, wenn der Button nicht submit heißen soll?
      Wenn er nicht submit heißen soll?
      Dann brauchst du keinen Workaround, dann hast du das Problem ja gar nicht - siehe oben.
      Also habe ich mir überlegt, dem Submit-Button einen anderen Namen zu geben und ein Hidden-Field mit Namen "submit" einzufügen.
      Dabei passiert auch wieder was? (... siehe oben)
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar

      Lädt...
      X