jueves, 4 de septiembre de 2014

El método POST en PHP - 2 de 3



e. Lista desplegable de elección múltiple


Este campo se escribe en HTML de la siguiente manera:

<select name="pais[]" multiple="multiple">
<option value="E">España</option>
<option value="F">Francia</option>
<option value="R">Rusia</option>
<option value="A">Alemania</option>
</select>

El atributo value es opcional. Representa el valor que se ha transmitido en la tabla $_POST. El atributo multiple="multiple" también es obligatorio para indicar que la lista es de tipo múltiple.

El nombre se escribe con corchetes para indicar que el valor que se ha enviado con POST es de tipo tabla. De hecho, como hay muchas opciones, no podrá recuperar estos
valores en una variable. Por lo tanto, la tabla se utiliza para recuperar los valores que ha seleccionado.

El código PHP que permite recibir el valor de la lista desplegable es:

<?php
if (isset($_POST["pais"])) {//para que no haya error si
//no selecciona ningún país
echo "Los países seleccionados son:";
print_r ($_POST["pais"]);
} else {
echo "ningún país seleccionado.";
}
?>

Si selecciona Francia y España, da como resultado:

Los países seleccionados son:Array ( [0] => F [1] => E )

El atributo value no es obligatorio, al igual que en las listas de selección simple:

Por ejemplo, en la página formulario.php:

<select name="pais[]"multiple="multiple">
<option>Francia</option>
<option>España</option>
<option>Rusia</option>
<option>Alemania</option>
</select>

El código PHP que permite recibir el valor de la lista desplegable es:

<?php
if (isset($_POST["pais"])) {//para que no haya error si
//no selecciona ningún país
echo "Los países seleccionados son:";
foreach ($_POST["pais"] as $valor) {
echo $valor." ";
}
} else {
echo "ningún país seleccionado.";
}
?>

Si selecciona Francia y España, da como resultado:

Los países seleccionados son: Francia España

Puede introducir el atributo selected="selected" en varias opciones y así mostrar el país.

Por ejemplo, para mostrar España y Rusia:

<select name="pais[]" multiple="multiple">
<option selected="selected">España</option>
<option>Francia</option>
<option selected="selected">Rusia</option>
<option>Alemania</option>
</select>


f. Lista de casillas de selección


Este campo se escribe en HTML de la siguiente manera:

<input type="checkbox" name="pais[]" value="E" />España<br />
<input type="checkbox" name="pais[]" value="F" />Francia<br />
<input type="checkbox" name="pais[]" value="R" />Rusia<br />
<input type="checkbox" name="pais[]" value="A" />Alemania<br />

El atributo value es opcional. Representa el valor que se ha transmitido a la tabla $_POST.

El nombre se escribe con corchetes para indicar que el valor que se ha enviado con POST es de tipo tabla. De hecho, como hay varias opciones, no se permite recuperar estos valores en una variable. Por lo tanto, se utiliza una tabla para recuperar los valores que ha seleccionado.

El código PHP que permite recibir el valor de la lista desplegable es:

<?php
if (isset($_POST["pais"])) {//para que no haya error si
//no selecciona ningún país
echo "Los países seleccionados son:";
print_r ($_POST["pais"]);
} else {
echo "ningún país seleccionado.";
}
?>

Si selecciona Rusia y Alemania, da como resultado:

Los países seleccionados son:Array ( [0] => R [1] => A )

El atributo value no es obligatorio, al igual que en las listas, ya que puede recuperar la elección del usuario con ayuda de las claves de la tabla:

Por ejemplo, en la página formulario.php:

<input type="checkbox" name="pais[’España’]" />España<br />
<input type="checkbox" name="pais[Francia]" />Francia<br />
<input type="checkbox" name="pais[’Rusia’]" />Rusia<br />
<input type="checkbox" name="pais[’Alemania’]" />Alemania<br />

El código PHP que permite recibir el valor de la lista desplegable es:

<?php
if (isset($_POST["pais"])) {//para que no haya error si
//no selecciona ningún país
echo "Los países seleccionados son:";
foreach ($_POST["pais"] as $clave => $valor) {
echo $clave."->".$valor." ";
}
} else {
echo "ningún país seleccionado.";
}
?>

Si selecciona Rusia y Alemania, da como resultado:

Los países seleccionados son:’Rusia’->on ’Alemania’->on

Puede introducir el atributo checked="checked" en varias de las casillas de selección que permiten seleccionar el país.

Por ejemplo, para mostrar España y Rusia:

<input type="checkbox" name="pais[’España’]"
checked="checked"/>España<br/>
<input type="checkbox" name="pais[’Francia’]" />Francia<br />
<input type="checkbox" name="pais[’Rusia’]" checked="checked"/>Rusia<br />
<input type="checkbox" name="pais[’Alemania’]" />Alemania<br />


g. Lista de botones de opción


Este campo se escribe en HTML de la siguiente manera:

<input type="radio" name="pais" value="E" />España<br />
<input type="radio" name="pais" value="F" />Francia<br />
<input type="radio" name="pais" value="R" />Rusia<br />
<input type="radio" name="pais" value="A" />Alemania

El valor value es obligatorio. Representa el valor que se ha transmitido en la tabla $_POST y no existe otra manera de conocer el valor de la opción que ha seleccionado.

El atributo name debe ser el mismo en todo el grupo de sus botones de opción.

El código PHP que permite recibir el valor del botón de opción es:

<?php
if (isset($_POST["pais"])) {//para que no haya error si
//no selecciona ningún país
echo "El país seleccionado es:";
echo $_POST["pais"];
} else {
echo "ningún país seleccionado.";
}
?>

Si selecciona Rusia, da como resultado:

El país seleccionado es:R

Puede introducir el atributo checked="checked" en un botón de opción para que aparezca marcado un país por defecto. Así el usuario está obligado a elegir un país, ya que no puede eliminar la selección de todas los botones de opción.

Por ejemplo, para mostrar España:

<input type="radio" name="pais" value="F" />Francia<br />
<input type="radio" name="pais" value="E" checked="checked"/>España<br />
<input type="radio" name="pais" value="R" />Rusia<br />
<input type="radio" name="pais" value="A" />Alemania



Espero haber ayudado en algo. Hasta la próxima oportunidad!








No hay comentarios:

Publicar un comentario en la entrada