2010-11-06 24 views
10

Soy nuevo en PHP CodeIgniter,cómo obtener los valores de casilla de verificación utilizando php CodeIgniter en el controlador

cómo conseguir casilla valores utilizando php CodeIgniter en el controlador.

Aquí están las casillas de verificación, quiero obtener los valores de la casilla de verificación en el nombre como "businessType" en el controlador utilizando menthod post.

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

Para sugerir

gracias

Respuesta

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

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

debería ver que $ de datos es una matriz, y muestra diferentes Virginia lues. Intenta hacer var_dump($data); para ver qué hay dentro de la matriz.

var_dump()

7

Si sólo una de estas casillas se pueden seleccionar a la vez, se debe utilizar un grupo de botones de radio (type="radio") en su lugar. Supongo que esto es lo que estás tratando de hacer, ya que name s de todas las entradas son las mismas.

para obtener el valor del grupo de botones de casilla de verificación o de radio, utilice:

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

Editar:

Si en realidad se está queriendo casillas de verificación, tendrá que nombrarlos a todos algo diferente:

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

Y a continuación, utilizar el mismo método de post como antes:

$this->input->post('businessType1') //the first checkbox's value 
$this->input->post('businessType2') //the second 
$this->input->post('businessType3') //the third 
+0

pero con la ayuda de este ¿Cómo voy a obtener múltiples valores de selección? – Vicky

+0

Ah, si realmente desea obtener valores múltiples, deberá tener un nombre diferente para cada casilla de verificación. Véase más arriba. – davidscolgan

+0

este método hará que sea bastante difícil trabajar con casillas de verificación que se generan dinámicamente. ¿Por qué no usar el método sugerido por @tpae? – aphoe

-1

Como se sugirió dvcolgan (+1), los botones de opción son los que debe usar, aquí hay un ejemplo envuelto en un conjunto de campos.

Su 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> 

Luego, en su php

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

pero con la ayuda de esto, ¿cómo obtendré valores de selección múltiples? – Vicky

6

apoyos Ponga después de cada nombre. Dale a cada uno un valor único:

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

conseguirlos así:

substr(implode(', ', $this->input->post('businessType')), 0) 
Cuestiones relacionadas