今天提交表单数到据库时,CheckBox选中的值不能够全部提交,浪费了很长时间,最后解决方法如下:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
</head>
<body>
<?php
$link=mysqli_connect("localhost","root","");
if($link) {
echo "连接成功!";
mysqli_select_db($link, 'mydb');//选择要访问的数据库
mysqli_query($link, "SET NAMES 'utf8'");//在选择数据库表前,防止中文在浏览器中查看乱码
if (!empty($_POST['hobby'])) {
$hobby_arr = array();
$hobby_arr = $_POST['hobby'];
$hobby = implode('、', $hobby_arr);//把数组转换为字符串
mysqli_query($link, "INSERT INTO users VALUES ('$hobby')");
mysqli_close($link);
}
}else{
echo mysqli_error($link);
}
?>
<form action="" method="post">
<!-- 由于checkbox属性,我们必须把checkbox复选择框的名字设置为一个数组hobby[],这样php才能读取,以数据形式,否则不能正确的读取checkbox复选框的值哦。-->
<input type="checkbox" name="hobby[]" value="打球"/>打球
<input type="checkbox" name="hobby[]" value="看书"/>看书
<input type="checkbox" name="hobby[]" value="听音乐"/>听音乐
<input type="submit" value="提交" />
</form>
</body>
</html>