Thomas: checkboxen mit Mehrfachauswahl

Hallo!

Ich habe per html mehrere checkboxen unter dem gleichen namen, aber mit der Möglichkeit auf Mehrfachauswahl
Jetzt ist es so, dass ich per php nur den letzten wert bekommen kann, da hier kein array geschrieben wird
Jetzt hab ich das ganze wie im Praxisteil auf dieser Seite für select-tags vorgeschlagen mit name="name[]" versucht, aber dies funktioniert auch nur bei den selects und nicht bei den checkboxen, daher meine Frage:
Wie kann ich mehrere checkbox-auswahlen per php verarbeiten?

Vielen Danke
Thomas

  1. Hello out there!

    Ich habe per html mehrere checkboxen unter dem gleichen namen, aber mit der Möglichkeit auf Mehrfachauswahl

    http://de.selfhtml.org/html/formulare/auswahl.htm#checkboxen@title=Checkboxen bieten immer Mehrfachauswahl, das unterscheidet sie von http://de.selfhtml.org/html/formulare/auswahl.htm#radiobuttons@title=Radiobuttons.

    […] wie im Praxisteil auf dieser Seite für select-tags

    Wie bitte?! Was denn nun: Checkboxen oder http://de.selfhtml.org/html/formulare/auswahl.htm#listen@title=Auswahllisten <http://de.selfhtml.org/html/formulare/auswahl.htm#listen_mehrfach@title=mit Mehrfachauswahl>?

    Jetzt ist es so, dass ich per php nur den letzten wert bekommen kann

    Beim Absenden des Formulars werden alle ausgewählten Werte in den Query gepackt. Was ist also dein Problem?

    See ya up the road,
    Gunnar

    --
    “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
    1. Naja, wenn ich folgendes hab:

      <input type="checkbox" name="Sportarten" value="laufen">laufen<br>
      <input type="checkbox" name="Sportarten" value="rudern">rudern<br>
      <input type="checkbox" name="Sportarten" value="schwimmen">schwimmen<br>
      ...

      Und dann will ich per php schreiben lassen:
      Du ruderst und schwimmst

      geht das nicht mit
      echo "Du";
              foreach($Sportarten as $sport) {
                  if($schalter) echo " und ";
                  echo $sport;
                  $schalter=1;
              }
      den es wird kein array Sportarten gebildet => ich erhalte immer nur die letzte...

      lg
      Thomas

      1. Hallo,

        Du hast Die Möglichkeit unterschiedliche Namen zu vergeben, oder Dich einer Datenfeldstruktur zu bedienen:

        <input type="checkbox" name="Sportarten[]" value="laufen">laufen<br>
         <input type="checkbox" name="Sportarten[]" value="rudern">rudern<br>
         <input type="checkbox" name="Sportarten[]" value="schwimmen">schwimmen<br>

          
        <?php  
        echo "Du ".implode(', ',$GLOBALS['_'.$_SERVER["REQUEST_METHOD"]]['Sportarten']);  
        ?>  
        
        

        Gruß aus Berlin!
        eddi

        --
        Wer Rechtschreibfehler findet, darf sie behalten.
        1. Da erhalt ich aber nur:
          Warning: implode(): Bad arguments. in [link] on line 64

          also will er das nicht :-(
          Warum rufst du die nicht mir $_REQUEST['Sportarten'] oder $_POST auf?

          lg
          Thomas

          1. Re:

            Da erhalt ich aber nur:
            Warning: implode(): Bad arguments. in [link] on line 64

            also will er das nicht :-(
            Warum rufst du die nicht mir $_REQUEST['Sportarten'] oder $_POST auf?

            1.) Das array $_REQUEST wird durch die Konfiguration variables_order bestimmt. Somit sind fehler nicht ausgeschlossen.
             2.) Kann ich nicht richen, welche Methode Dein Formular nutzt
             3.) Ist der Code, den ich Dir geschreiben habe schnell aus der Hüfte genagelt worden.
             4.) Bist Du durch zitierte Fehlermeldung angehalte, SELBST nachzudenken ;)

            Gruß aus Berlin!
            eddi

            --
            Wer Rechtschreibfehler findet, darf sie behalten.
      2. Hello out there!

        <input type="checkbox" name="Sportarten" value="laufen">laufen<br>
        <input type="checkbox" name="Sportarten" value="rudern">rudern<br>
        <input type="checkbox" name="Sportarten" value="schwimmen">schwimmen<br>

        Besser:

        <input type="checkbox" name="Sportarten" id="laufen" value="laufen"><label for="laufen">laufen</label><br>  
        <input type="checkbox" name="Sportarten" id="rudern" value="rudern"><label for="rudern">rudern</label><br>  
        <input type="checkbox" name="Sportarten" id="schwimmen" value="schwimmen"><label for="schwimmen">schwimmen</label><br>
        

        Dann muss man nicht auf das Kästchen zielen, die Beschriftung tut’s auch.

        Dir ist schon klar, dass der Nutzer das ausgefüllte Formular erstmal abschicken muss (submit) und du das, was dann zurückkommt, auswerten musst?

        See ya up the road,
        Gunnar

        --
        “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
        1. Hallo!

          Besser:
          <input type="checkbox" name="Sportarten" id="laufen" value="laufen"><label for="laufen">laufen</label><br>

          Naja, aber der Masse an Daten ist das leider so nicht besser :-(

          Dir ist schon klar, dass der Nutzer das ausgefüllte Formular erstmal abschicken muss (submit) und du das, was dann zurückkommt, auswerten musst?

          na klar, aber wie kommst du in dem zusammenhang auf so ein dumme Frage
          als ich kenn niemanden der PHP programmier und glaubt das php client-seitig läuft...

          cya
          Thomas

          1. Hallo Thomas,

            als ich kenn niemanden der PHP programmier und glaubt das php client-seitig läuft...

            wenn ich mir einige der Fragen ansehe, die hier fast täglich gestellt werden, dann scheinen das sehr viele sogenannte Programmierer nicht zu wissen. Du solltest mal darauf achten, wie manche Fragesteller hier PHP und JS kunterbunt vermischen wollen!

            So long,
             Martin

            --
            Was ist wichtiger: Die Sonne oder der Mond?
            Der Mond. Denn er scheint nachts. Die Sonne dagegen scheint tagsüber, wenn es sowieso hell ist.
            1. Hallo!

              ok, np
              ich weiß es auf jeden Fall :-)

              Danke
              Thomas

          2. Hello out there!

            Besser:
            <input type="checkbox" name="Sportarten" id="laufen" value="laufen"><label for="laufen">laufen</label><br>
            Naja, aber der Masse an Daten ist das leider so nicht besser :-(

            Besser ist, was besser für den Nutzer ist. Und auf die paar Bytes mehr wird er gern einen Wimpernschlag länger warten.

            na klar, aber wie kommst du in dem zusammenhang auf so ein dumme Frage
            als ich kenn niemanden der PHP programmier und glaubt das php client-seitig läuft...

            Sorry, aber deine Frage war IMHO so dumm gestellt.

            See ya up the road,
            Gunnar

            --
            “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)