Php 将多个选中值保存到MySQL数据库

Php 将多个选中值保存到MySQL数据库,php,mysql,checkbox,Php,Mysql,Checkbox,我有一个PHP表单,它最终将把所有填写的数据写入MySQL数据库。这是完全可行的,但我不知道如何处理一些棘手的问题: 我有一个DIV,它请求一个表的所有行。每一行代表一个类别,用户可以选择几个类别添加到他们的帖子中。这是我用来检索前面的行+复选框的代码: <?php $sql = "SELECT merknaam FROM merken"; $result = mysql_query($sql); while ($row = mysql_fetch_array($result)) {

我有一个PHP表单,它最终将把所有填写的数据写入MySQL数据库。这是完全可行的,但我不知道如何处理一些棘手的问题:

我有一个DIV,它请求一个表的所有行。每一行代表一个类别,用户可以选择几个类别添加到他们的帖子中。这是我用来检索前面的行+复选框的代码:

<?php

$sql = "SELECT merknaam FROM merken";
$result = mysql_query($sql);

while ($row = mysql_fetch_array($result)) {
    echo "&nbsp;&nbsp;<input type=\"checkbox\" name=\"merken\" value='" . $row['merknaam'] . "'>&nbsp;" . $row['merknaam'] . " <Br />  ";
}

?>

用户可以选择多个类别,我希望将它们全部保存并写入我的数据库。所有类别都应写在“一”列中,称为“类别”,但单独的类别仍应可区分


可能是个棘手的问题?希望有人能帮忙

将复选框的代码更改为:

echo "&nbsp;&nbsp;<input type=\"checkbox\" name=\"merken[]\" value='" . $row['merknaam'] . "'>&nbsp;" . $row['merknaam'] . " <br />  ";
echo”“$第['merknaam'行]。“
”;

在名称后面添加
[]
将允许PHP将复选框视为一个数组,您可以将其序列化并存储在数据库中。

非常感谢,这确实帮助了我!当我添加括号并选择一些随机值时,我会在打印数组时得到以下结果:[code]数组([0]=>Fujitsu Siemens[1]=>Mango[2]=>Revel[3]=>Revo[4]=>Roth[5]=>Rotring)[/code]如何将其写入表字段,但保持它们的可区分性?您可以序列化数组()并将其存储在数据库中。然后,当您从数据库中检索它时,可以取消序列化(),这将为您将其转换回数组。