Mehrfachauswahl in mysql speichern?

  • Hallo,

    ich möchte mehrere werte durch ein Mehrfachauswahlfeld auswählen und in der DB in einem feld speichern. Diese Werte sollten dann durch ein Komma getrennt werden. Es handelt sich dabei um die Werte 1-12. ich möchte dann einträge anzeigen lassen, welche ein oder mehrere der Werte beinhalten.

    Wenn ich nun mehrere werte in dem formular auswähle wird immer nur der letzte wert gespeichert. Könnt ihr mir weiterhelfen?

    gruß max

  • in etwa so:
    Formular:

    action.php

    PHP
    //query erstellen
    $sql = "INSERT INTO 
                tabelle (feld) 
               VALUES(
                 '" .mysql_real_escape_string(implode(',', $_POST['wert'])). "'
               )";
    if(!mysql_query($sql))
     die(mysql_error());
    else
     echo'eingefügt';

    Gruß,
    jojo


  • Bloß würde ich das nicht mit dem ',' machen: Wenn du richtig MySQL-Abfragen damit nutzen willst, solltest du eine eigene Tabelle dafür machen. Ansonsten kannst du Platz sparen, indem du die Zahlen hexadezimal kodierst, vor allem auch mit größeren Zahlen. (http://de.php.net/bin2hex)

  • Also ich möchte das ganze ja mit einem dropdown machen.. so:

    PHP
    <select name="formate" size="3" multiple>
    <option value="1" name="formate[]">1</option>
    <option value="2" name="formate[]">2</option>
    <option value="3" name="formate[]">3</option>
    </select>



    geht das so?