代码之家  ›  专栏  ›  技术社区  ›  Vicky

如何在控制器中使用php codeigniter获取复选框值

  •  11
  • Vicky  · 技术社区  · 14 年前

    如何在控制器中使用php Codeigniter获取复选框值。

    这里是复选框,我想使用post-menthod在controller中获得基于名称作为“businessType”的复选框值。

    <input type="checkbox"name="businessType" value="1">
    <input type="checkbox"name="businessType" value="2">
    <input type="checkbox"name="businessType" value="3">
    

    谢谢

    4 回复  |  直到 10 年前
        1
  •  39
  •   tpae    9 年前
    <input type="checkbox" name="businessType[]" value="1">
    <input type="checkbox" name="businessType[]" value="2">
    <input type="checkbox" name="businessType[]" value="3">
    

    $data = $this->input->post('businessType');

    var_dump($data); 看看阵列里面有什么。

    var_dump()

        2
  •  7
  •   dvcolgan    14 年前

    如果一次只能选择其中一个复选框,则应使用一组单选按钮( type="radio" )相反。我想这就是你想做的 name

    要获取复选框或单选按钮组的值,请使用:

    $this->input->post('businessType')
    

    编辑:

    <input type="checkbox"name="businessType1" value="1">
    <input type="checkbox"name="businessType2" value="2">
    <input type="checkbox"name="businessType3" value="3">
    

    然后使用与之前相同的post方法:

    $this->input->post('businessType1') //the first checkbox's value
    $this->input->post('businessType2') //the second
    $this->input->post('businessType3') //the third
    
        3
  •  7
  •   Kenzo    12 年前

    在每个名字后面加上大括号。为每个值赋予唯一值:

    <input type="radio" name="businessType[]" value="1">
    <input type="radio" name="businessType[]" value="2">
    <input type="radio" name="businessType[]" value="3">
    

    substr(implode(', ', $this->input->post('businessType')), 0)
    
        4
  •  -1
  •   Bella    14 年前

    正如dvcolgan(+1)所建议的,单选按钮是您应该使用的,下面是一个包装在fieldset中的示例。

    你的HTML

    <fieldset>
    <legend>Choose Business Type:</legend><br>
    <input type="radio" name="businessType" value="1">
    <input type="radio" name="businessType" value="2">
    <input type="radio" name="businessType" value="3">
    </fieldset>
    

    然后在你的php中

    $businessType = $this->input->post("businessType");