Listbox / Mehrfachauswahl

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

  • Listbox / Mehrfachauswahl

    Tach auch,

    ich habe ein kleines Problem mit einer Listbox in der eine Mehrfachauswahl möglich ist:

    PHP-Code:
    <form name="form1" method="post" action="">
      <
    p>
        <
    select name="select" size="4" multiple>
          <
    option value="eins" selected>eins</option>
          <
    option value="zwei">zwei</option>
          <
    option value="drei">drei</option>
          <
    option value="vier">vier</option>
        </
    select>
      </
    p>
      <
    p>
        <
    input type="submit" name="Submit" value="Abschicken">
      </
    p>
    </
    form
    Wie komme nach dem Submit an alle ausgewählten Werte ? mit $HTTP_POST_VARS['select'] erhalte ich immer nur den letzten ausgewählten Wert in der Liste ??

    Grüsse
    CB
    Hans Matthöfers Widerspruch zur Expertenerkenntnis: Künstliche Intelligenz ist besser als natürliche Dummheit.

  • #2
    Die Daten werden in einem Array übergeben, denn du dann nur noch auslesen musst.
    Beispiel:
    PHP-Code:
    <html>
    <body>
    <form name="form1" method="post" action="<? $PHP_SELF ?>">
      <p>
        <select name="select[]" size="4" multiple>
          <option value="eins" selected>eins</option>
          <option value="zwei">zwei</option>
          <option value="drei">drei</option>
          <option value="vier">vier</option>
        </select>
      </p>
      <p>
        <input type="submit" name="Submit" value="Abschicken">
      </p>
    </form>
    </body>
    </html>
    <?
        if (isset($select))
         {
            for($i=0;$i<count($select);$i++)
            {
                echo $select[$i]."<br>\n";
            }
        }
        
    ?>
    mfg
    Günni


    Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
    Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
    Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
    City-Tiger - Online durch die Straßen tigern...

    Kommentar


    • #3
      selbstgespräch

      habs schon gefunden ...

      4. Wie bekomme ich alle Werte aus einem "select multiple"-HTML-Tag?

      Mit einem "select multiple"-Tag können Benutzer mehrere Werte aus einer Liste auswählen. Diese Werte werden dann an den "action handler" des Formulars (z.B. ein PHP-Skript) übergeben. Problematisch ist dabei, dass alle mit demselben Namen übergeben werden, z.B.: <select name="var" multiple>

      Jede ausgewählte Option wird übergeben als: var=option1
      var=option2
      var=option3

      Jede Option wird den Inhalt der vorherigen $var-Variablen überschreiben. Die Lösung ist, die spezielle PHP-Lösung hierfür zu verwenden. Sie sollten das Tag wie folgt umschreiben: <select name="var[]" multiple>

      PHP weiß dann, dass $var als Array behandelt werden soll. Jede ausgewählte Wert wird dem Array hinzugefügt. Das erste Element wird zu $var[0], das nächste zu $var[1] etc. Die count()-Funktion kann benutzt werden, um herauszufinden, wie viele Optionen ausgewählt wurden. Mit der sort()-Funktion können Sie bei Bedarf das Array sortieren.

      grüzze
      cb
      Hans Matthöfers Widerspruch zur Expertenerkenntnis: Künstliche Intelligenz ist besser als natürliche Dummheit.

      Kommentar


      • #4
        @günni

        da warst do wohl ne sekunde schneller

        THX & grüzze
        cb
        Hans Matthöfers Widerspruch zur Expertenerkenntnis: Künstliche Intelligenz ist besser als natürliche Dummheit.

        Kommentar


        • #5
          ja, anscheindend...
          mfg
          Günni


          Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
          Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
          Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
          City-Tiger - Online durch die Straßen tigern...

          Kommentar

          Lädt...
          X