簡體   English   中英

如何將復選框數據插入數據庫Codeigniter框架

[英]how to insert checkbox data into database codeigniter framework

我只想問一下,如果它們具有相同的名稱,我如何只保存1個復選框。

例如,我有此復選框,只有其中一個需要保存在我的桌子上

<input type="checkbox" name="loan" value="First Loan Application"> First Loan Application
<input type="checkbox" name="loan" value="Renewal"> Renewal

在我的桌子上,我有一個稱為loan的字段

我可以在我的controller上這樣做嗎

function insert_data(){
   $data = array(
     'loan' => $this->input->post('loan'),
      ....
   );
}

在我看來,我有這個

<form id="myForm" method="post" action="<?php echo base_url(); ?>main/insert_data">

<input type="checkbox" name="loan" value="First Loan Application"> First Loan Application
<input type="checkbox" name="loan" value="Renewal"> Renewal

</form>

如果我做的正確或缺少某些東西,有人可以幫助我。

正如M.Hemant所說,應該使用單選按鈕,以便用戶只能選擇其中之一。

此外,您應該為該列設計具有tinyint類型的數據庫。 例如,將0存儲為“ First Loan Application ,將1為“ Renewal 這樣,數據庫將比varchar類型使用更少的空間,並且索引更容易。

<input type="radio" name="loan" value="0"> First Loan Application
<input type="radio" name="loan" value="1"> Renewal

如果希望用戶僅選擇一個選項,則很容易使用單選按鈕,但是如果要提供復選框以進行多個選擇,這是一種簡單的方法。 在輸入類型的html復選框中,將name屬性更改為這樣的數組。

 <form method='post'>
<input type='checkbox' name='test[]' value='1'/>1
 <input type='checkbox' name='test[]' value='2'/>2
  <input type='checkbox' name='test[]' value='3'/>3
  <button type='submit' name='sub'>sub</button>
  </form>

現在在文件的php部分中,使用isset函數檢查此測試數組

if(isset($_REQUEST['sub'])){
    print_r($_REQUEST['test']);
}

在這里執行print_r語句后,您可以在復選框中看到選中的值。現在,您可以使用implode函數將數組轉換為可以存儲在數據庫中的字符串的單列

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM