【发布时间】:2014-03-12 20:31:24
【问题描述】:
我的复选框有问题,我想添加验证,但我不知道如何在验证规则中查看我的姓名字段。
我的看法
<?php
foreach( $tab1 as $row){
?>
<a>
<input type="checkbox" name="<?php echo 'id_user_'.$row->id_user; ?>" value=" <?php echo $row->id_user; ?>" />
</a>
<?php
当我这样做时,我会得到结果(复选框的名称)例如:
id_user_1
id_user_2
id_user_3
现在我想添加验证,但是:
$this->form_validation->set_rules(' WHAT SHOULD I WRITE HERE ??? ', 'User','required');
编辑:
$this->form_validation->set_rules('id_uzytkownika', 'Uzytkownika','required');
if ($this->form_validation->run())
{
$todo = array(
'tytul_projektu'=>$this->input->post('tytul_projektu'),
'opis_projektu'=>$this->input->post('opis_projektu'),
'data_zakonczenia'=>$this->input->post('datepicker')
);
$user_projekty = array(
'id_uzytkownika'=>$this->input->post('id_uzytkownika'),
'id_projektu'=>$this->input->post('id'),
);
$users = array();
foreach($_POST as $key => $value)
{
if(strpos($key, 'id_uzytkownika') === 0)
{
$users[] = $value;
}
}
$this->Todo_model->add($todo,$user_projekty,$users);
查看:
<?php
foreach( $tab1 as $row){
?>
<a>
<input type="checkbox" name="<?php echo 'id_uzytkownika['.$row->id_uzytkownika.']'; ?>" value="<?php echo $row->id_uzytkownika; ?>" />
型号:
function add($data,$data2,$users) { $this->db->insert('projekty', $data);$id = $this->db->insert_id('projekty');
$data2['id_projektu'] = $id;$query = $this->db->query("SELECT * FROM uzytkownicy");
foreach($users 作为 $user) {
$data2['id_uzytkownika'] = $user; $this->db->insert('projekty_uzytkownicy', $data2); } return $query->result(); }
【问题讨论】:
-
见stackoverflow.com/questions/594820/…,我用的东西很像那里的第二个答案。
-
您可能需要考虑使用Arrays as field names。 theseanswers 也可能会有所帮助。
-
当我尝试这样做
$this->form_validation->set_rules('tab1[]', 'User','required');或$this->form_validation->set_rules('tab1[id_user]', 'User','required');在视图中我总是请插入用户:( -
试试 $this->form_validation->set_rules('tab1[id_user.i]', 'User','required');
标签: codeigniter validation checkbox