當您不確切知道用戶可以選擇多少個選項時,我很好奇如何將所選項目插入到數據庫中。查詢多個選擇框
說我有下面的代碼:
<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'];
$query = mysql_query("INSERT INTO `pets` (`pet1`, `pet2`, `pet3`) VALUES ('".$pets[0]."', '".$pets[1]."', '".$pets[2]."')");
?>
而且用戶只選擇選項「狗」或「狗」和「貓」或「貓」和「狗」等,基本上三者的任何組合。
我必須硬編碼查詢接受所有可能的選項,然後指定一個WHERE子句說「WHERE $pets != ''
」或類似的東西嗎?
我很感激任何幫助。
而是存儲一個序列化的字符串。 – j08691 2013-02-12 19:12:50
[**請不要在新代碼中使用'mysql_ *'函數**](http://bit.ly/phpmsql)。他們不再被維護[並被正式棄用](https://wiki.php.net/rfc/mysql_deprecation)。請參閱[**紅框**](http:// j。熔點/ Te9zIL)?學習[*準備的語句*](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果你選擇PDO,[這裏是一個很好的教程](http://j.mp/PoWehJ)。 – h2ooooooo 2013-02-12 19:19:59
@ h2ooooooo感謝您的支持 – a7omiton 2013-02-12 19:23:17