2013-11-27 104 views
0

如何發送複選框到數據庫?使複選框發送到數據庫

我的一些代碼:(我覺得一切exept複選框作品)

<label for="year">Question</label> 
     <input type="checkbox" name="2014" value="2014"><span class="cb">2013/2014</span><br/> 
     <input type="checkbox" name="2015" value="2015"><span class="cb">2014/2015</span><br/> 

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

    if($_POST['year']!=""){ 

連接

$sql = "INSERT INTO vakt(year) 
      VALUES('".$_POST['year']."') "; 
+0

使用將複選框值存儲到隱藏文本框的js函數(使用d ocument.getElementById存儲),並從PHP獲取該值使用一個簡單的形式。 –

+0

你最大的問題是盲目地將用戶提交的數據插入到數據庫中,使你容易受到SQL注入的攻擊。首先解決這個問題,你應該對發生什麼問題有個很好的想法。 – Izkata

回答

1

給所有複選框同名值,用[]結尾:

<input type="checkbox" name="years[]" value="2014"><span class="cb">2013/2014</span><br/> 
<input type="checkbox" name="years[]" value="2015"><span class="cb">2014/2015</span><br/> 

然後你就可以得到選擇年PHP中的數組:

foreach($_POST['years'] as $year) { 
    // Insert $year into database 
} 

請請確保您出於安全原因正確轉義任何用戶提交的數據