我的数据库中不断出现“数组”这个词。我的表单中有复选框,并且很难使用它。我尝试了不同的东西,这是我拥有的最新编码。我究竟做错了什么?
在我的表单中,复选框的名称为“cats[]”。
我不知道第一部分是否重要(我在网上看到并尝试将其与其余部分一起使用以防万一)
if(count($cats) > 0)
{
$str = implode(",", $cats);
}
然后是实际代码
$cats = array();
// Not good?
//if(isset($_POST['submit']))
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if(isset($_POST['cats']))
{
$cats = $_POST['cats'];
}
$categories= $_POST['categories'];
// This saves it aa a string, as you can only save those values as string.
$str = $categories . ": " . implode(", ", $cats);
var_dump ($str);
}
这对于数据库
$sql="INSERT INTO form_corpo_test (compagnie)
VALUES
('$_POST[cats]')";
编辑:
这是正确的代码(谢谢你们的帮助!我希望我可以将您的两个答案标记为“最佳答案”)。希望这对其他人有所帮助(错误,尽管他们当然也需要研究 sql 注入)。
$cats = array();
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if(isset($_POST['cats'])) {
$cats = implode(",", $_POST['cats'] );
}
$categories= $_POST['categories'];
$str = $categories . ": " . $cats;
}
和
$sql="INSERT INTO form_corpo_test (categories)
VALUES
('$str')";