validar resueltos recoger procesar por múltiple formularios formulario enviar ejercicios datos con codigo php post

php - resueltos - Obtener datos POST de múltiples casillas de verificación?



recoger datos de un select múltiple con php (3)

Actualmente solo está capturando su última entrada oculta. ¿Por qué tienes esa entrada escondida allí? Si desea recopilar información si está marcada la casilla "Otro", debe ocultar el

<input type="text" name="other" style="diplay:none;"/>

y puede mostrarlo con javascript cuando la casilla "Otro" esté marcada. Algo como eso.

Simplemente haga el servicio de atributo de nombre []

<li> <label>What service are you enquiring about?</label> <input type="checkbox" value="Static guarding" name="service[]">Static guarding<br> <input type="checkbox" value="Mobile Patrols" name="service[]">Mobile Patrols<br> <input type="checkbox" value="Alarm response escorting" name="service[]">Alarm response escorting<br> <input type="checkbox" value="Alarm response/ Keyholding" name="service[]">Alarm response/ Keyholding<br> <input type="checkbox" value="Other" name="service[]">Other</span> </li>

Luego, en su PHP puede acceder a él como tal

$service = $_POST[''service'']; echo $service[0]; // Output will be the value of the first selected checkbox echo $service[1]; // Output will be the value of the second selected checkbox print_r($service); //Output will be an array of values of the selected checkboxes

etc ...

Estoy tratando de crear un formulario usando PHP y no puedo encontrar un tutorial sobre lo que necesito, así que pensé en preguntar aquí.

Tengo una opción de casilla de verificación múltiple en mi página ...

<li> <label>What service are you enquiring about?</label> <input type="checkbox" value="Static guarding" name="service">Static guarding<br> <input type="checkbox" value="Mobile Patrols" name="service">Mobile Patrols<br> <input type="checkbox" value="Alarm response escorting" name="service">Alarm response escorting<br> <input type="checkbox" value="Alarm response/ Keyholding" name="service">Alarm response/ Keyholding<br> <input type="checkbox" value="Other" name="service">Other<input type="hidden" value="Other" name="service"></span> </li>

Sin embargo, no estoy seguro de cómo recopilar todos los valores de casilla de verificación con el método POST.

si uso

$service = $_POST[''service''];

Solo me devuelven ''otros''


Nombra los campos como service[] lugar de service , luego podrás acceder a él como una matriz. Después de eso, puede aplicar funciones regulares a las matrices:

  • Verifique si se seleccionó un cierto valor:

    if (in_array("Other", $_POST[''service''])) { /* Other was selected */}

  • Obtenga una cadena separada por nueva línea con todas las opciones seleccionadas:

    echo implode("/n", $_POST[''service'']);

  • Pasa por todas las casillas de verificación seleccionadas:

    foreach ($_POST[''service''] as $service) { echo "You selected: $service <br>"; }


<input type="checkbox" value="Other" name="service">Other<input type="hidden" value="Other" name="service"></span>

Tienes un campo de entrada oculto con el mismo nombre que la casilla de verificación. los campos "posteriores" con el mismo nombre que el anterior sobrescribirán los valores del campo anterior. Esto significa que su formulario, como se publicó anteriormente, SIEMPRE enviará el service=Other .

Dada la redacción de su pregunta en el html, parece más como si quisiera un botón de opción, que permite seleccionar UN solo de un grupo de campos del mismo nombre. Las casillas de verificación son una situación "Y", los botones de radio corresponden a "O"