Diferencia entre revisiones de «Plantilla:PHP/FormulariosConceptosGenerales»
De WikiEducator
Línea 41: | Línea 41: | ||
<div class="slide"> | <div class="slide"> | ||
===Cómo leer datos de usuario=== | ===Cómo leer datos de usuario=== | ||
− | *Nos falta ver como podemos hacer que el cliente aporte valores al programa escribiéndolos por el teclado | + | *Nos falta ver como podemos hacer que el cliente (a través del navegador) aporte valores al programa escribiéndolos por el teclado |
*Para leer datos lo hacemos mediante un formulario (hay más métodos, como leer un fichero ,bases de datos, ...) | *Para leer datos lo hacemos mediante un formulario (hay más métodos, como leer un fichero ,bases de datos, ...) | ||
*El formulario será parte de la página del cliente. | *El formulario será parte de la página del cliente. | ||
Línea 50: | Línea 50: | ||
<div class="slide"> | <div class="slide"> | ||
;Leyendo del usuario | ;Leyendo del usuario | ||
− | *En él tendremos cajas de texto donde el | + | *En él tendremos cajas de texto donde en el navegador el usuario podrá escribir contenido |
− | *En | + | *En los diferentes elementos de entrada de un formulario , como una texto, el usuario podrá escribir valores. |
− | *Al darle el botón enviar | + | *Al darle el botón enviar dichos valores irán al servidor, en seguida veremos como leerlo en el servidor |
− | * | + | *Repasemos como crear formularios en el cliente y lo que más nos interesa, como leerlos en el servidor |
</div> | </div> | ||
<div class="slide"> | <div class="slide"> | ||
===Creando un formulario=== | ===Creando un formulario=== | ||
*Esta parte la veis el módulo de diseño de interfaces , no obstante comentaremos lo que aquí vamos a utilizar | *Esta parte la veis el módulo de diseño de interfaces , no obstante comentaremos lo que aquí vamos a utilizar | ||
+ | *Un formulario se establece con la etiqueta '''''form''''' | ||
;Etiqueta form | ;Etiqueta form | ||
− | + | ||
{{MRM_Definicion| | {{MRM_Definicion| | ||
− | Para la programación servidor entendemos por formulario una sección del código html que va a poder contener, además de otros elementos varios objetos gráficos con los que el usuario va a poder interactuar e insertar valores para que éstos lleguen al servidor}} | + | Para la programación servidor, entendemos por formulario una sección del código html que va a poder contener, además de otros elementos varios objetos gráficos con los que el usuario va a poder interactuar e insertar valores para que éstos lleguen al servidor}} |
</div> | </div> | ||
Línea 67: | Línea 68: | ||
<div class="slide"> | <div class="slide"> | ||
===Atributos de la etiqueta=== | ===Atributos de la etiqueta=== | ||
− | *Etiqueta form con una serie de atributos de los que nos interesan dos principalmente | + | *Etiqueta form con una serie de atributos, de los que nos interesan dos principalmente |
− | #action especifica el fichero que se | + | #action especifica el fichero que se invocará al servidor. Este fichero contendrá el código php que queremos que se ejecute |
− | #method especifica el modo en el que se van a pasar los parámetros (valores introducidos a los | + | #method especifica el modo en el que se van a pasar los parámetros (valores introducidos a los diferentes objetos del formulario, o que tengan asignados por defecto). |
+ | ====GET o POST==== | ||
<source lang=html4strict> | <source lang=html4strict> | ||
<form action="mifichero.php" method="POST" | <form action="mifichero.php" method="POST" | ||
Línea 76: | Línea 78: | ||
</source> | </source> | ||
</div> | </div> | ||
+ | *Por defecto los valores son pasados por GET | ||
+ | *Este método es fácil de ver pues se viauliza en el URL, apareciendo como parte de él separado por el signo interrogación con parejas Variable valor | ||
+ | {{MRM_Ejemplo|Title: Método GET| | ||
+ | ;HTML en el cliente | ||
+ | <source lang=html4strict> | ||
+ | <form action="mifichero.php" method="GET"> | ||
+ | Nombre | ||
+ | <input type=text name = 'nombre' value='maría'> | ||
+ | Apellido | ||
+ | <input type=text name = 'apellido' value='Ruiz'> | ||
+ | <br /> | ||
+ | <input type=submit value=enviar> | ||
+ | </form> | ||
+ | </source> | ||
+ | ;Al fisualizar en el navegador la páginas se verá | ||
+ | [[Imagen:submitGET1.png]] | ||
+ | |||
+ | ;Al presionar submit si observamos el url | ||
+ | [[Imagen:submitGET2.png]] | ||
+ | }} | ||
<!--3 --> | <!--3 --> |
Revisión de 20:02 3 nov 2016
- Por defecto los valores son pasados por GET
- Este método es fácil de ver pues se viauliza en el URL, apareciendo como parte de él separado por el signo interrogación con parejas Variable valor
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <h1>Juego de adivinar un número </h1> <h3>Tú piensas un número de 1 al 1024 y yo lo adivino en 10 intentos .... (o menos)</h3> <hr /> <?php if (!isset($_POST[empezar])): ?> <form action ="." method="POST"> <b>Haz click para empezar</b> <input type=submit name ="empezar" value="empezar" /> </form> <?php else: echo "<form action ='.' method='POST'>"; $intento = $_POST['intento']; $intento++; $min = is_null($_POST['min']) ? 0 : $_POST['min']; $max = is_null($_POST['max']) ? 1024 : $_POST['max']; $estado = $_POST['valor']; $num = $min+ round(($max - $min ) / 2); switch ($estado) { case 'mayor': $min = $num + 1; break; case 'menor': $max = $num - 1; break; case 'acertado': break; } $num = $min+round(($max - $min ) / 2); echo "Intento número $intento, El número es $num <br />"; echo "<input type='hidden' name='intento' value =$intento />"; echo "<input type='hidden' name='min' value =$min />"; echo "<input type='hidden' name='max' value =$max />"; ?> <input type="radio" name="valor" value = mayor>Mayor <br /> <input type="radio" name="valor" value = menor>Menor <br /> <input type="radio" name="valor" value = igual>Acertaste <br /> <br /> <input type=submit name ="empezar" value="Evaluar" /> </form> <?php endif ?> </body> </html>