内爆():传入的参数无效.无法查看为数组定义的变量


implode(): Invalid arguments passed in. Cant see the defined variable for the array

我创建了以下复选框表单来显示爱好。数组在同一个单元格中进入数据库,这是完美的。然而,在我提交之前,页面上就出现了以下错误。(我是这方面的新手,任何帮助都将不胜感激:)

未定义的索引:中的爱好(第29行)警告:内爆():中传递的参数无效(第29行)

代码:

$checkbox=implode(',', $_POST['hobbies']);
if(isset($_POST['Submit'])){
  //for($i=0; $i<sizeof($hobbies);$i++){
   $query=queryMysql("INSERT INTO hobbies  VALUES ('$user', '" .$checkbox. "')");
    mysql_query($query) or die(mysql_error());
    echo "record is inserted";
  }


echo <<<_END
<body>
<form method='post' action='hobbies.php' >
<input type="checkbox" name="hobbies[]" value="reading">Reading<br>
<input type="checkbox" name="hobbies[]" value="cycling">Cycling<br>
<input type="checkbox" name="hobbies[]" value="swimming">Swimming<br>
<input type="checkbox" name="hobbies[]" value="running">Running<br>
<input type="submit" name='Submit' value='Submit'/></form>
</body>
</html>


_END;
?>

也许把这一行放在if(isset($_POST['Submit'])){ }条件中:$checkbox=implode(',', $_POST['hobbies']);

试试这个代码,我希望它能工作:-

if(isset($_POST['Submit'])){

  $checkbox=implode(",", $_POST['hobbies']);
   $query=queryMysql("INSERT INTO hobbies  VALUES ('$user', '$checkbox')");
    mysql_query($query) or die(mysql_error());
    echo "record is inserted";
  }

echo <<<_END
I think you need to more customization like this 

        if(isset($_POST['Submit'])){
        if(is_array( $_POST['hobbies']) && count( $_POST['hobbies']) >0){
        $checkbox=implode(',', $_POST['hobbies']);
          //for($i=0; $i<sizeof($hobbies);$i++){
           $query=queryMysql("INSERT INTO hobbies  VALUES ('$user', '" .$checkbox. "')");
            mysql_query($query) or die(mysql_error());
            echo "record is inserted";
          }
        echo <<<_END
    } ?>
        <body>
        <form method='post' action='hobbies.php' >
        <input type="checkbox" name="hobbies[]" value="reading">Reading<br>
        <input type="checkbox" name="hobbies[]" value="cycling">Cycling<br>
        <input type="checkbox" name="hobbies[]" value="swimming">Swimming<br>
        <input type="checkbox" name="hobbies[]" value="running">Running<br>
        <input type="submit" name='Submit' value='Submit'/></form>
        </body>
        </html>

<?php        
        _END;
        ?>