1. 程式人生 > >怎麼把PHP中複選框選中的多個值寫入到資料庫中

怎麼把PHP中複選框選中的多個值寫入到資料庫中

  今天提交表單數到據庫時,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>