Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] werte aus mehreren Checkboxen in db schreiben

Einklappen

Neue Werbung 2019

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

  • [Erledigt] werte aus mehreren Checkboxen in db schreiben

    hallo leute,
    ich habe da ein ganz kleines problem, ich habe in einem formular eine abfrage von interessen durch ankreuzen von checkboxen.
    diese werte möchte ich gerne in eine db wegschreiben, aber ich bekomme immer nur den ersten wert in die db, nicht beide (falls beide angekreuzt werden).
    hier mal die cb's:

    Code:
    <input type="checkbox" name="interesse" value="sport">
                Sport 
    
                <input type="checkbox" name="interesse" value="touring">
                Touring</td>
    und hier die variablenverarbeitung in einer separaten datei:

    Code:
    ...
    $interesse = $HTTP_POST_VARS['interesse'];
    
    $sql_insert = "INSERT INTO $table";
    
    $sql_insert .= "(VORNAME, NAME,  INTERESSE)";
    
    $sql_insert .= "VALUES ('$vorname', '$name', '$interesse')";
    
    $result = mysql_query($sql_insert, $db);
    was hae ich übersehen?

  • #2
    Recht einfach: Entweder du gibst jeder Checkbox einen anderen Namen, beispielsweise name="interesse_touring" und fragst sie also auch seperat ab, oder du machst es über ein Array. Beispielsweise name="interesse[]". Dann kannst du auch das ganze später wie ein Array im PHP behandeln, was bei Bedarf mehrere Interessen beinhalten könnte.
    [url]www.php-maven.org[/url] PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
    Twitter @ [url]https://twitter.com/#!/mepeisen[/url] und Facebook @ [url]http://t.co/DZnKSUih[/url]

    Kommentar


    • #3
      http://tut.php-q.net/formulare.html#u13

      du musst das mit einem array machen.

      grüße ben.
      [b][url=http://www.benjamin-klaile.de]privater Blog[/url][/b]

      Kommentar


      • #4
        du musst bei den checkboxen verschiedene namen auswählen weil du sonst die variablen überschreibst

        und $HTTP_POST_VARS ist veraltet benutze doch $_POST

        mfg wing

        Kommentar


        • #5
          beides mal heißt die var interessen
          nene doch das ein interessen1 und dann interessen2
          dann speichere

          du überschreibst doch die var einfach wieder so es nur einen wert gib

          Kommentar


          • #6
            das ist nen service ... 4 antworten in 2 minuten .. *THUMBS UP*
            [b][url=http://www.benjamin-klaile.de]privater Blog[/url][/b]

            Kommentar


            • #7
              Ich möchte ja niemandem auf die Füsse treten, aber ich finde, dass "Ich war schneller" bzw. "Ich war langsamer" etwas nervt. Man klickt immer wieder in einen Thread rein, um so einen Quatsch zu lesen. Muss doch nicht sein, oder?

              Gruß
              phpfan

              Kommentar


              • #8
                ich finde, dass das ständige geheule darüber auch nervt. und zwar ganz gewaltig.

                aber okay. keinen stress ..

                Zitat von Ben der Moderator
                Schluss mit dem Spam. Die Beiträge, die nichts mit diesem Thema zu tun hatten, wurden von mir gelöscht. (Ausname phpfans, da dieser den Grund beinhaltet)
                Alle weiteren Beiträge sollten mit dem Thema in Zusammenhang stehen.
                grüße ben.

                EDIT:
                Das hier lass ich ..
                Zitat von Ben
                das ist nen service ... 4 antworten in 2 minuten .. *THUMBS UP*
                [b][url=http://www.benjamin-klaile.de]privater Blog[/url][/b]

                Kommentar


                • #9
                  man seit ihr schnell!!!
                  ich habe nun folgedes gemacht:

                  Code:
                  <input type="checkbox" name="interesse[]" value="sport">
                              Sport 
                  
                              <input type="checkbox" name="interesse[]" value="touring">
                              Touring</td>
                  nun bekomme ich wenigsten ein array.
                  ich möchte die werte des arrays aber durch ein komma getrennt in ein tabellenfeld schreiben, und da komme ich mom. nicht weiter

                  schon mal ganz herzlichen dank an alle!

                  [/code]

                  Kommentar


                  • #10
                    sagst du halt

                    feld mit $var1 , $var2

                    vom prinzip geht es so

                    Kommentar


                    • #11
                      $string = implode(",", $interesse);

                      Gruß
                      phpfan

                      Kommentar


                      • #12
                        zur testausgabe empfiehlt sich immer so etwas hier:
                        PHP-Code:
                        <?php

                           
                        echo '<pre>';
                           
                        print_r($_POST);
                           echo 
                        '</pre>';

                        ?>
                        also einfach mal ausgeben, was in dem array drin ist.

                        gut. zu deinem problem. du greifst einfach auf die array-elemente zu und gibst sie aus ..
                        PHP-Code:
                        <?php

                            
                        echo $arrayelement1 ' , ' $arrayelement2;

                           
                        ?>
                        grüße ben
                        [b][url=http://www.benjamin-klaile.de]privater Blog[/url][/b]

                        Kommentar


                        • #13
                          ok danke,
                          mein problem lag daran:
                          Code:
                          "".implode(",",$intesesse)."";
                          danke jetzt geht es.

                          christian

                          Kommentar

                          Lädt...
                          X