Tutorial de PHP y MySQL - Los formularios

11 - Los formularios

[editar]
Tutorial creado por José Antonio Rodríguez. Extraido de: http://es.tldp.org/Manuales-LuCAS/manual_PHP/manual_PHP/
02 de Marzo de 2006
Los Formularios no forman parte de PHP, sino del lenguaje estánder de Internet, HTML, pero como éstos van a aperecer muchas veces durante el curso,  vamos a dedicar esta algunas líneas a ellos. Lo que viene a continuación es HTML y no PHP.

Todo formulario comienza con la etiqueta <FORM ACTION="lo_que_sea.php" METHOD="post/get">. Con . Con ACTION indicamos el script que va procesar la información que recogemos en el formulario, mientras que METHOD nos indica si el usuario del formulario va ha  enviar datos (post) o recogerlos (get). La etiqueta <FORM> indica el final del formulario.

A partir de la etiqueta <FORM> vienen los campos de entrada de datos que pueden ser:

Cuadro de texto:

<input type="text" name="nombre" size="20" value="jose">

Cuadro de texto con barras de desplazamiento:

<textarea rows="5" name="descripcion" cols="20">Es de color rojo</textarea>

Casilla de verificación:

<input type="checkbox" name="cambiar" value="ON">

Botón de opción:

<input type="radio" value="azul" checked name="color">

Menú desplegable:

<select size="1&qu class="codigo"><select size="1" name="dia">

<option selected value="lunes">lunes</option>

<option>martes</option>

<option value="miercoles">miercoles</option>

</select>

Boton de comando:

<input type="submit" value="enviar" name="enviar">

Campo oculto:

<input type="hidden" name="edad" value="55">

Este último tipo de campo resulta especialmente útil cuando que remos pasar datos ocultos en un formulario.

Como habrás observado todos lo tipos de campo tienen un modicador llamado name, que no es otro que el nombre de la variable con la cual recogeremos los datos en el script indicado por el modificador ACTION de la etiqueta FORMFORM, con value establecemos un valor por defecto.

A continuación veamos un ejemplo, para lo cual crearemos un formulario en HTML como el que sigue y lo llamaremos formulario.htm:

<HTML>

<BODY>

<FORM METHOD="post" ACTION="mis_datos.php">

<input type="hidden" name="edad" value="55">

<p>Tu nombre <input type="text" name="nombre" size="30" value="jose"></p>

<p>Tu sistema favorito

<select size="1" name="sistema">

<option selected value="Linux">Linux</option>

<option value="Unix">Unix</option>

<option value="Macintosh">Macintosh</option>

<option value=&qmargin-left: 75"><option value="Windows">Windows</option>

</select></p>

<p>¿Te gusta el futbol ? <input type="checkbox" name="futbol" value="ON"></p>

<p>¿Cual es tu sexo?</p>

<blockquote>

<p>Hombre<input type="radio" value="hombre" checked name="sexo"></p>

<p>Mujer <input type="radio" name="sexo" value="mujer"></p>

</blockquote>

<p>Aficiones</p>

<p><textarea rows="5" name="aficiones" cols="28"></textarea></p>

<p><input type="submit" value="Enviar datos" name="enviar">

<input type="res-left: 50"> <input type="reset" value="Restablecer" name="B2"></p>

</FORM>

</BODY>

<HTML>

Y ahora creemos el script PHP llamado desde le formulario mis_datos.php:

<?PHP;

if ($enviar) {

echo "Hola <b>" . $nombre . "</b> que tal estás<BR>\n";

echo "Eres " . $sexo . "<BR>\n";

echo "Tienes " . $edad . "<BR>\n";

echo "Tu sistema favorito es " . $sistema . "<BR>\n";

if ($futbol) {

echo "Te gusta el futbol <BR>\n";

} else odigo" style="margin-left: 50">} else {

echo "NO te gusta el futbol <BR>\n";

}

if ($aficiones != ) { echo "Tus aficiones son: <BR>\n"; echo nl2br($aficiones); } else { echo "NO tienes aficiones <BR>\n"; } } echo "<a href='formulario.htm'>VOLVER AL FORMULARIO</a>" ?> Una vez rellenados los datos del formulario, pulsamos el botón **Enviar datos**, con lo que le campo **enviar** toma lo que su etiqueta value indica, es decir **enviar="Enviar datos"**. En nuestro script lo primero que evaluamos es que  se haya enviado el formulario, y para ello nada mejor que comprobar que la variable $enviar no está vacia. Le ponemos el signo dolar delante a **enviar**, ponemos el signo dolar delante a **enviar**, ya que en PHP todas las variables se les refiere con este signo. Pero y fusionaramos el código de ambos fichero, nos ahorrariamo uno. Si la variable $enviar está vacia, enviamos el formulario. <?PHP; if ($enviar) { echo "Hola <b>" . $nombre . "</b> que tal estás<BR>\n"; echo "Eres " . $sexo . "<BR>\n"; echo "Tienes " . $edad . "<BR>\n"; echo "Tu sistema favorito es " . $sistema . "<BR>\n"; if ($futbol) { echo "Te gusta el futbol <BR>\n"; } else { echo "NO te gusta el futbol <BR>\n"; } if ($aficiones != ) {

echo "Tus aficiones son: <BR>\n";

echo nl2br($aficiones);

} else {

echo "NO tienes aficiones <BR>\n";

}

echo "<a href='$PHP_SELF'>VOLVER AL FORMULARIO</a>"

} else {

<HTML>

<BODY>

<FORM METHOD="post" ACTION="<?PHP echo $PHP_SELF ?>">

<input type="hidden" name="edad" value="55">

<p>Tu nombre <input type="text" name="nombre" size="30" nombre" size="30" value="jose"></p>

<p>Tu sistema favorito

<select size="1" name="sistema">

<option selected value="Linux">Linux</option>

<option value="Unix">Unix</option>

<option value="Macintosh">Macintosh</option>

<option value="Windows">Windows</option>

</select></p>

<p>¿Te gusta el futbol ? <input type="checkbox" name="futbol" value="ON"></p>

<p>¿Cual es tu sexo?</p>

<blockquote>

<p>Hombre<input type="radio" value="hombre" checked name="sexo"></p>

<p>="codigo" style="margin-left: 100"><p>Mujer <input type="radio" name="sexo" value="mujer"></p>

</blockquote>

<p>Aficiones</p>

<p><textarea rows="5" name="aficiones" cols="28"></textarea></p>

<p><input type="submit" value="Enviar datos" name="enviar">

<input type="reset" value="Restablecer" name="B2"></p>

</FORM>

</BODY>

</HTML>

<?PHP

} fin IF

?>

La variable de entorno $PHP_SELF, es una variable de entorno que nos devuelve el nombre del script que estamos ejecutando. Y por último, hacer notar el uso de la función nl2br(), nl2br(), con la cuál sustituimos los retornos de carro del texto, los cuáles  no reconocen los navegadores, por la etiqueta <BR>.
[editar]

17 opiniones

CASTILLO VILLA ESWIN te escribe:

Hola realmente este contenido de php y mysql es exelente este contenido esta muy entendible, de verdad sigue asi. Att: desde PERÚ.
gracias

muy bueno, me sacaste de un apuro
excelente

muy bueno
E

E
sdcv

trash
1 2 3 4 | siguiente >

Tutoriales relacionados con 'Tutorial de PHP y MySQL'

Su principal objetivo de diseño fue la velocidad, por ello se suprimieron algunas características de... Más »
En este artículo explicamos paso a paso como realizar una instalación a partir de los... Más »
Entiendase que AJAX no se refiere a usar el objeto XMLHttpRequest de manera indispensable porque... Más »
Las sesiones nos permiten almacenar y consultar información sobre un visitante sin necesidad de estar... Más »
Hace muuuuucho tiempo, cuando empezaba a aprender algo sobre php, me llamó la atención un... Más »

Autor y licencia de 'Tutorial de PHP y MySQL'


Tutorial de José Antonio Rodríguez. Extraido de: http://es.tldp.org/Manuales-LuCAS/manual_PHP/manual_PHP/ CopyLeft
Licencia GNU Free Documentation License: http://www.es.gnu.org/licencias/fdles.html
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.