使用复选框编码插入和编辑

insert and edit with checkbox coding

我是 php 的新手,我正在观看一个视频来学习将网站中的数据插入数据库,但我遇到了一个大问题。

因为我要从许多成员的许多组中创建一些复选框供成员注册。 我按照这个 video tutorial,但是有错误。

<?php
//$_SESSION['name'];
session_start();
echo "student";
?>

<form action="" method="POST">    
<input type="checkbox" name="group[]" value="group1">group1<br>
<input type="checkbox" name="group[]" value="group2">group2<br>
<input type="checkbox" name="group[]" value="group3">group3<br>
<input type="checkbox" name="group[]" value="group4">group4<br>
<input type="checkbox" name="group[]" value="group5">group5<br>

<input type="submit" name="submit" value="submit">   
</form>

<?php

    if  (isset($_POST['submit']))
    {
        //print_r($_POST);
    echo implode(',', $POST['group']);
}
?>

</h1>
<a href="logout.php">Logout</a>

所有我想做的事情都遵循了这些编码,但仍然有错误

Warning: implode(): Invalid arguments passed in C:\xampp\htdocs\fyp\student.php on line 37

echo implode(',', $POST['group']);

有什么问题吗,多谢指教

您在 POST 之前缺少 $_

而不是这个

echo implode(',', $POST['group']);

使用这个

echo implode(',', $_POST['group']);

您忘记了 POST 之前的下划线。这是固定的行:

echo implode(',', $_POST['group']);

还有一些其他简单的问题可能会在以后引起一些麻烦。首先,在语法方面,您应该关闭 HTML 输入标签(如下所示):

<input type="checkbox" name="group[]" value="group1" />group1<br>
...

接下来,当没有复选框被选中时,你会得到同样的错误,因为变量 $_POST['group'] 还没有被定义。在调用 implode().

之前,您可以使用 PHP empty() 函数来测试此变量 (http://php.net/manual/en/function.empty.php)