Michael S.: Übergabe bestimmter Formularfelder verhindern

Ich hab mir in einem Formular ein Paar Select-Elemente neben die Textfelder zum eingeben eingebaut, die in Verbindung mit onchange dem Benutzer ermöglichen den Inhalt der Textfelder auch aus einer select-Liste zu wählen. Nun sollen die Werte der select-Felder aber nicht mit übergeben werden, wenn ich das Formular abschicke.

Kann ich irgendwie das übergeben bestimmter input-Werte ans post-Array unterdrücken oder muss ich mit irgendwelche workarounds ausdenken?

mfg, Micha

  1. Hi Micha,

    soweit ich weiß werden nur die Inhalte von sichtbaren Objekten übergeben. Also kannst Du eine Funktion schreiben, die die nicht zu übertragenden Objekte unsichtbar macht und dann erst den POST durchführen.

    Gruß

    Hans

    1. Hi,

      soweit ich weiß werden nur die Inhalte von sichtbaren Objekten übergeben.

      Seltsam, bei mir werden Hiddenfiles auch übergeben, obwohl die unsichtbar sind.
      Um etwas nicht zu übertragen, muss man sie deaktivieren.

      1. Hi,

        soweit ich weiß werden nur die Inhalte von sichtbaren Objekten übergeben.

        Seltsam, bei mir werden Hiddenfiles auch übergeben, obwohl die unsichtbar sind.
        Um etwas nicht zu übertragen, muss man sie deaktivieren.

        Was für einen Sinn hätten sonst die Hidden-Felder? natürlich werden sie mit übergeben.

        1. Hi,

          Was für einen Sinn hätten sonst die Hidden-Felder? natürlich werden sie mit übergeben.

          Du hast die Ironie in meinem Beitrag übersehen. Mein Vorposter hat ausgesagt, das unsichtbare Felder nicht übergeben werden. Hiermit reiche in die Ironietags nasch, die jeder nach eigenem Ermessen setzen kann

          <ironie />
          <ironie />
          <ironie />
          <ironie />
          <ironie />
          <ironie />
          <ironie />
          <ironie />
          <ironie />

          1. Hallo

            Hiermit reiche in die Ironietags nasch, ...

            Hhmmm ... lecker lecker, die Tags. ;-)
            *scnr*

            Tschö, Auge

            --
            Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
            (Victor Hugo)
            Veranstaltungsdatenbank Vdb 0.1
            1. Hhmmm ... lecker lecker, die Tags. ;-)
              *scnr*

              Sämtliche Schreibefehler unterliegen meinem Copyright und dürfen weder von anderen verwendet noch nachgemacht oder auf irgendeine andere Art verbreitet werden :D

              1. Hallo

                Hhmmm ... lecker lecker, die Tags. ;-)
                *scnr*

                ... unterliegen meinem Copyright ...

                Ahhh, ein Angelsachse. ;-)

                Tschö, Auge

                --
                Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
                (Victor Hugo)
                Veranstaltungsdatenbank Vdb 0.1
  2. hi,

    Nun sollen die Werte der select-Felder aber nicht mit übergeben werden, wenn ich das Formular abschicke.

    Wo liegt das Problem, sie in der Verarbeitung einfach zu ignorieren?

    Kann ich irgendwie das übergeben bestimmter input-Werte ans post-Array unterdrücken oder muss ich mit irgendwelche workarounds ausdenken?

    Du könntest ihnen auch den selben Namen geben wie dem Inputfeld, und sie vor diesem im Quelltext platzieren - PHP unterschlägt dir alle Werte, die unter dem selben Parameternamen übergeben wurden (so lange du keine [] am Ende des Namens nutzt).

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. hi,

      Nun sollen die Werte der select-Felder aber nicht mit übergeben werden, wenn ich das Formular abschicke.

      Wo liegt das Problem, sie in der Verarbeitung einfach zu ignorieren?

      Kann ich irgendwie das übergeben bestimmter input-Werte ans post-Array unterdrücken oder muss ich mit irgendwelche workarounds ausdenken?

      Du könntest ihnen auch den selben Namen geben wie dem Inputfeld, und sie vor diesem im Quelltext platzieren - PHP unterschlägt dir alle Werte, die unter dem selben Parameternamen übergeben wurden (so lange du keine [] am Ende des Namens nutzt).

      gruß,
      wahsaga

      hmm. ich glaub an dieser stelle ist etwas quelltext angebracht..

      echo "<td>
      <select name="".$bezeichnung.
      "_select" onchange="this.form.".$bezeichnung.
      ".value=this.form.".$bezeichnung.
      "_select.options[this.form.".$bezeichnung.
      "_select.selectedIndex].value"
      style="width:250px"

      ";

      darauf folgt ne schleife, die die options festlegt.

      Wie soll ich da bitte denselben Namen vergeben? Wenn ich das tue wird der wert vom select nicht mehr ins textfeld geschrieben afaik.

      Mir gehts rein darum, dass nachher nicht so was wie
      irgendwas_select => "A", irgendwas => "A"
      im $_POST auftaucht ;)

      mfg
      Micha

  3. Wenn du kein Name-Attribut vergibst, dann werden (meines Wissens) die Werte nicht übergeben.

  4. Hi,

    Kann ich irgendwie das übergeben bestimmter input-Werte ans post-Array unterdrücken oder muss ich mit irgendwelche workarounds ausdenken?

    Es ist möglich, mehrere Form-Elemente zu definieren. Normalerweise sollten dann nur die Elemente per Post übertragen werden, die im gleichen Formular wie der benutzte Submit-Button stehen.

    Gruß,

    Harlequin

    1. Hi,

      Kann ich irgendwie das übergeben bestimmter input-Werte ans post-Array unterdrücken oder muss ich mit irgendwelche workarounds ausdenken?

      Es ist möglich, mehrere Form-Elemente zu definieren. Normalerweise sollten dann nur die Elemente per Post übertragen werden, die im gleichen Formular wie der benutzte Submit-Button stehen.

      Gruß,

      Harlequin

      echo "<td>
      <select name="".$bezeichnung.
      "_select" onchange="this.form.".$bezeichnung.
      ".value=this.form.".$bezeichnung.
      "_select.options[this.form.".$bezeichnung.
      "_select.selectedIndex].value"
      style="width:250px"

      ";

      darauf folgt ne schleife, die die options festlegt.

      Wie soll ich da bitte denselben Namen vergeben? Wenn ich das tue wird der wert vom select nicht mehr ins textfeld geschrieben afaik.

      Mir gehts rein darum, dass nachher nicht so was wie
      irgendwas_select => "A", irgendwas => "A"
      im $_POST auftaucht ;)

      das textfeld und die select-auswahl stehen gezwungenermaßen im selben formular :(

      mfg
      Micha

      1. Hi,

        das textfeld und die select-auswahl stehen gezwungenermaßen im selben formular :(

        Weshalb? Wegen des Javascripts für die Übernahme? Das lässt sich problemlos uach auf 2 getrennte Formulare übertragen. Oder liegt es an der HTML-Struktur, das vor und nach dem Select wichtige Inputs kommen, so dass es sich nicht auf 2 Formulare aufteilen lässt? Dann wirds wirklich schwer... Man könnte natürlich versuchen 2 DIVs über CSS-Positionierung übereinander zu legen (je eine mit einem der Formulare) aber schön ist das denk ich nicht mehr...

        Ansonsten fallen mir so ohne weiteres keine weiteren Möglichkeiten mehr ein... Obwohl, du könntest im OnSubmit des Formulars alle Elemente aus dem Formular entfernen, die nicht übertragen werden sollen, das müsste eigentlich auch gehen, alleridngs nur mit aktivierten JavaScript.

        Gruß,

        Harlequin

        1. Danke fürs brainstorming, mir ist nach den vielen Vorschlägen selbst mal wieder was eingefallen :D

          ich kann in onchange das select mit "this" ansprechen, dann brauch ich dem Ding keinen Namen mehr geben und Namenloses nimmt die Post nich entgegen :D

          mfg
          Micha

          1. Danke fürs brainstorming, mir ist nach den vielen Vorschlägen selbst mal wieder was eingefallen :D

            ich kann in onchange das select mit "this" ansprechen, dann brauch ich dem Ding keinen Namen mehr geben und Namenloses nimmt die Post nich entgegen :D

            Das hab ich doch gesagt...