2013-10-11 2 views
0

Je souhaite enregistrer plusieurs sélections déroulantes dans une colonne de la base de données.Enregistrement d'une liste déroulante de sélection multiple dans une colonne

Je donne les résultats suivants:

<select name="pack_choice[]" style="width:270px; margin-bottom:2px;"> 
<option value=''>---Select---</option> 
<?php 
$query = mysql_query("SELECT * FROM tbl_package_source where pack_type = 'Bronze' AND pack_desc = 'Pasta/Noodles/Vegetables'"); 
while ($row = mysql_fetch_array($query)){ 
$pack_id = $row['pack_code']; 
echo "<option value='".$row['pack_code']."'>".$row['pack_part']."</option>"; 
} ?> 
</select> 
<select name="pack_choice[]" style="width:270px; margin-bottom:2px;"> 
<option value=''>---Select---</option> 
<?php 
$query1 = mysql_query("SELECT * FROM tbl_package_source where pack_type = 'Bronze' AND pack_desc = 'Seafoods'"); 
while ($row = mysql_fetch_array($query1)){ 
$pack_id = $row['pack_code']; 
echo "<option value='".$row['pack_code']."'>".$row['pack_part']."</option>"; 
} 
?> 
</select><br/> 

et voici ma requête

$pack_choice = implode(", ",$_POST['pack_choice']); 
$qry = "Insert INTO tbl_packages (pack_choice) VALUES ('{$pack_choice}')"; 
$result_set = mysql_query($qry); 
+0

Je sais que ce n'est pas votre question, mais peut-être stocker 2 valeurs dans une colonne n'est pas la meilleure solution. Parce que lors de la récupération des données hors de la base de données, vous devez diviser les valeurs à nouveau (et supposer qu'aucun ne sont manquants et dans le bon ordre). – Wietze314

Répondre

0

Vous oubliez de fermer citation:

$qry = "Insert INTO tbl_packages (pack_choice) VALUES ('{$pack_choice}')"; 

Est-ce le cas? Si non, partagez s'il vous plaît les erreurs que vous obtenez.

+0

J'ai juste oublié de le mettre ici quand je tapais, mais ce n'était pas le problème, avec les codes que j'ai laissés, il n'insère pas les 2 éléments de sélection dans le menu déroulant dans la base de données. – AnnoyedKyo

+0

Je suis d'accord avec Al3x_F4nt0m, vous devez 'var_dump'' $ _POST ['pack_choice'] 'et' $ pack_choice' et '$ qry' et vérifiez ce qui ne va pas ou partagez-le ici. Vous pouvez également faire 'var_dump (mysql_error())' juste après 'mysql_query()' pour voir l'erreur. – Yaroslav

0
$pack_choice = implode(", ",$_POST['pack_choice']); 
print_r($pack_choice); // HAVE YOU TRIED TO PRINT OUT // 
$qry = "Insert INTO tbl_packages (pack_choice) VALUES ('{$pack_choice}'); 
$result_set = mysql_query($qry); 
+0

mais l'impression imprime juste les valeurs sélectionnées sur le site Web, il n'insère pas vraiment sauf si vous faites la bonne requête? – AnnoyedKyo

+0

oui, et donnez-moi ça –

Questions connexes