获取一个多选框的所有值的最佳方法是什么,然后我想将这些值保存在数据库中的一行中,然后我想从该行中单独获取每个值。做这样的事情最好的方法是什么?我的目标是保存值,然后将每个值分开。
最佳答案
你可以这样做
<select name="foo[]" multiple="multiple">
<option value="dog">Dog</option>
<option value="cat">Cat</option>
<option value="fish">Fish</option>
</select>
<?php
$pets = $_POST['foo'];
//sanitize and verify the input here. Escape properly and what not
$query = mysql_query("INSERT INTO `pets` (`pet1`, `pet2`, `pet3`) VALUES ('".$pets[0]."', '".$pets[1]."', '".$pets[2]."')");
?>
但老实说,这是构建数据库的糟糕方式。用它做任何有意义的事情都会非常烦人或困难。
为什么不设置以下数据库:
用户:
id | name
----------
1 | Tim
宠物:
id | user_id | type
-------------------
1 | 1 | Fish
2 | 1 | Cat
3 | 4 | Kakapo
然后您将拥有一个更易于搜索和操作的一致数据库。
关于php - 从选择多个中获取值并将它们放入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6148818/