Ejercicios formularios (PHP)

martes, 25 de mayo de 2010

Supongamos que tenemos este formulario :

 

<form method="post" action="guardar.php">

Nombre: <input type="text" name="nombre" />
Clave: <input type="password" name="clave" />
Edad: <input type="text" name="edad" />

<h2> Gustos: </h2>
<input type="checkbox" value="libros" name="libros" /> Libros
<input type="checkbox" value="comidas" name="comidas" /> Comidas
<input type="checkbox" value="mascotas" name="mascotas" /> Mascotas
<br />

<h2>Comida Favorita:</h2>
<input type="radio" value="1" name="comida_favorita" /> Dulce
<input type="radio" value="2" name="comida_favorita" /> Salado
<br />

<h2>Género</h2>
<select name="genero">
<option value="caballero">masculino</option>
<option value="dama">femenino</option>
</select>

<br />
Comentarios:
<br />
<textarea name="mensaje"></textarea>
<br />
<br />
<input type="reset" value="Resetear" />
<input type="submit" value="Enviar" />
</form>

en guardar.php realizar el codigo necesario para:
  1. Utilizar el value del género para saludar
  2. Indicar si es mayor de edad
  3. Si le gustan los libros indicar uno para leer
  4. Dependiendo de que gusto seleccione de comida, recomendar alguna.
  5. Mostrar los comentarios como una cita (recordar que tag html nos servia para hacer esto)

Ejercicios formularios

Buenas gente, les dejo un par de ejercicios sobre formularios. La idea es que generen el código HTML necesario para mostrar los siguientes formularios:
1-
2 -

Formularios

viernes, 21 de mayo de 2010

  • Un formulario es una sección de un documento web que contiene elementos especiales llamados "controles".
  • Los formularios son completados por el usuario final y sus datos se envían a través de la web hacia un servidor que los procesará.
  • Algunos de estos controles son: campos de texto, checkboxes, radio buttons, combos, etc.

Formularios

  • El elemento FORM actúa como contenedor de los controles.
  • Especifica el programa que procesará los datos en el servidor, mediante el atributo action
  • Especifica el método HTTP (GET o POST) que se utilizará para pasar los datos al servidor,mediante el atributo method.
  • Puede contener texto y otros elementos HTML además de los controles.
 <FORM action="procesodatos.php" method="post">

...contenido del formulario…

</FORM>

Controles

  • Input, de tipo
    • text : Casilla de texto
    • password : Campo de password (idem "text" pero ocultando los caracteres)
    • checkbox : Casilla de verificación
    • radiobutton : Casilla de opción
    • button : Boton de formulario
    • submit : Boton que envia el formulario
    • reset : Boton que resetea todos los valores del form
    • file : Campo para ingresar archivos
    • hidden : Campo oculto
  • Textarea (campo de texto multilinea)
  • Select & Options (combobox o lista desplegable)

atributos de campo input

Además de type, el elemento INPUT tiene los siguientes atributos:

name
el nombre del control
name="un_nombre"

value
el valor inicial del control

value="valor"

maxlength
la cantidad máxima de caracteres.
Solo cuando type es text o password
maxlength="32"

checked
checked especifica que incialmente el control está seleccionado.
sólo para type radio button y checkbox
checked="checked"

src
mediante URL, define la ubicación de la imagen
sólo para cuando type es image
src="imgs/imagen.jpg"

Ejemplo

<form action="datos.php" method="get">
Primer nombre: <input name="primerNombre" type="text" maxlength="15"><br/> Primer apellido: <input name="primerApellido" type="text"  maxlength="20"><br/> e-mail: <input name="email" type="text" maxlength="20"><br/> <input type="radio" name="sexo" value="H" checked="checked" >Hombre<br/> <input type="radio" name="sexo" value="M">Mujer<br/> <input type="submit"><input type="reset"> </form>

Select y Options

  • El elemento SELECT representa un combo.
  • Cada opción del combo es representada por el elemento OPTION.
  • El elemento SELECT debe tener al menos un elemento OPTION.
<select name="colores">
<option value="rojo">ROJO</option> <option value="azul">AZUL</option> <option value="rojo">VERDE</option> </select>

Atributos option y select

  • Para Select :
    multiple . Permite elegir varias opciones.
  • Para Option :
    selected . Permite indicar que esta seleccionado.

Textarea

  • El elemento TEXTAREA crea un control de texto multilínea.
  • El contenido de este elemento se representa como el valor inicial del control.
<textarea name="textos">
Este es el texto inicial del textarea
</textarea>

Elementos de solo lectura


Se utiliza el atributo readonly para determinar que el control es de sólo lectura.

Los controles de sólo lectura:
Su valor se envía cuando se hace el submit del formulario al que pertenece.
Su representación depende del navegador.

Elementos deshabilitados


Dependiendo del contexto, cuando la selección de determinados controles es innecesaria o irrelevante, es importante que podamos deshabilitar o asignar como de sólo lectura estos controles.

P.Ej. No queremos que un usuario haga el submit de un formulario hasta que no haya completado todos los datos. En este caso controlamos que el botón submit se encuentre deshabilitado hasta que se hayan completado todos los datos.

Se utiliza el atributo disabled para determinar que el control está deshabilitado.

Los controles deshabilitados: Su valor no se envía cuando se hace el submit del formulario al que pertenece.
Son representados de diferente manera dependiendo del navegador, generalmente en grisado.
Los elementos que soportan este atributo son:
BUTTON, INPUT, OPTION, SELECT y TEXTAREA

Funciones nativas de strings

miércoles, 19 de mayo de 2010

A continuación les dejo un resumen de las funciones que vimos en clase. Cada una de ellas tiene el link a la documentacion en php.net, en donde hay ejemplos y documentación.

Explode

Pasa un string a un array, usando un separador.

Sintaxis :
explode($separador,$string,$limite)
  • Separador : Especifica que caracter vamos a usar de corte
  • String : El texto que queremos pasar a array
  • Limite : Opcional, la cantidad maxima de elementos del array que retorne

Implode

Pasa ub array a string, usando un caracter como "union".

Sintaxis :
implode($union,$array)
  • Union : El caracter que se va a usar para "pegar" los elementos del array
  • Array : El array que queremos pasar a string

str_word_count

Cuenta la cantidad de palabras dentro de un string.

Sintaxis :
str_word_count($string,$return,$char)
  • String : El string a contar palabras
  • Array : Opcional: Especifica el valor de retorno de la funcion. Posibles valores:
    • 0 - Default, Retorna el numero de palabras
    • 1 - Retorna un array con las palabras
    • 2 - Retorna un array con la posicion de la palabra como clave de cada elemento
  • Char : Opcional . Especifica que caracteres tomar como palabras.

Strip Tags

Saca de un string todas las etiquietas HTML, XML y PHP

Sintaxis :
strip_tags($string,$permitidas)
  • String : El texto al cual le vamos a sacar las etiquetas
  • Permitidas : Opcional , las etiquetas que vamos a permitir.

substr

Retorna parte de un string

Sintaxis :
substr($string,$start,$largo)
  • String : El string del cual se quiere retornar una parte
  • Start : Desde donde voy a "cortar" mi string. Puede ser un numero positivo para arrancar a contar desde el inicio o numero negativo para contar desde el final.
  • Largo : Opcional. El largo de la cadena de retorno, por defecto es hasta el final del string. Un numero negativo indica un largo a partir del final del string

Trim

Saca los caracteres en blanco y otros caracteres especiales del principio y final del string.

Sintaxis :
trim($string,$charlist)
  • String : El string a remover caracteres
  • Charlist : Opcional. Especifica los caracteres a ser quitados del string

Strpos

Encuentra la posicion de la primera coincidencia dentro de un string

Sintaxis :
strpos($string,$find,$start)
  • String : El string donde buscar
  • Find : El string a buscar
  • Start : Opcional, a partir de que posicion buscar

Strrpos

Idem Strpos , pero esta encuentra la posicion de la ULTIMA coincidencia dentro de un string

Strlen

Devuelve el largo de una cadena

Sintaxis :
strlen($string)
  • String : El string a contar

str_replace

Remplaza todas las ocurrencias de un string dentro de otro

Sintaxis :
str_replace($busca,$remplaza,$donde)
  • Busca : Lo que estoy buscando a remplazar
  • Remplaza : Por que cosa lo quiero remplazar
  • Donde : El string donde estoy buscando

Ejercicios Funciones

miércoles, 12 de mayo de 2010

  1. Crear función "saludo_con_edad" que reciba como primera parámetro el nombre y como segundo la edad. La función deberá saludar y también mencionar la edad de la persona.

  2. Crear una función que dado un lado retorne el perímetro de un cuadrado

  3. Escribir una procedimiento que acepte un número como parámetro. Este procedimiento mostrará en pantalla "<h2> hola mundo! </h2>" tantas veces como lo indice el parámetro.

  4. Hacer una función que reciba como parámetro 2 números y devuelva la suma

  5. Hacer una funcion que reciba como parámetro un array numerico y devuelva la suma de todos sus elementos.

  6. Hacer un procedimiento que reciba como parámetro un array de string y que muestre en pantalla una lista HTML con los elementos.

  7. Crear una función que dado un array numérico retorne el promedio de los valores.

  8. Hacer una función que lleve como parámetro un texto y una URL y devuelva un link html.

  9. Hacer una funcion que reciba como parámetro un array de string y que devuelva una lista HTML con los elementos.

  10. Hacer una función que reciba un texto y un numero del 1 al 6 ; y formatee ese texto con un encabezado dependiendo el número. Si el numero no esta entre 1 y 6, que devuelva el texto dentro de un div.

Ejercicios Arrays

  1. Dado el siguiente array:
     $nombres = array("carla", "eva", "juana", "lilia", "estela", "romana", "china"); 
    1. mostrar en pantalla el nombre "estela" como encabezado
    2. Mostrar en pantalla los elementos de este array, utilizando for


  2. Crear un array de 10 elementos que guarden números del 0(cero) al 9.

  3. Dado el siguiente array:
     $numeros = array(3, 6, 78, 33, 66, 12, 9, 10); 
    1. encontrar el promedio de los números.
    2. mostrar en pantalla el mayor de todos los números.
    3. mostrar en pantalla el menor de todos los números.
    4. mostrar en pantalla la suma de todos los números.


  4. Dado el siguiente array:
     $colores = array("blanco","negro","rojo","azul","amarillo","verde"); 
    Utilizar un for each para recorrer el array y mostrar una lista html en pantalla.

  5. Dado un array el cual su cantidad de elementos puede variar, mostrar el primero y el ultimo, junto con la cantidad de elementos que tiene.

  6. Dado el siguiente array:
     $personas = array("cliente"=>"Julio Perez", "director" => "Emilio Gomez" ,
       "encargado" => "Rodolfo Aguirre" , "administrador" =>"Fernando Diaz") ; 
    1. Mostrar en una tabla el cargo y el nombre.
    2. Señalar con negrita el director, y enfatizado el cliente.


  7. Crear un arrray de números de N elementos, siendo los elementos del arrays números pares y divisibles entre 3. Mostrar los números en pantalla

Ejercicios estructuras de repetición

  1. Teniendo una variable “largo” numérica, mostrar en pantalla todos los números desde cero hasta largo.

  2. Teniendo una variable “largo” numérica, mostrar en pantalla todos los números desde cero hasta largo. Indicar si el numero es igual o menor a 10, mayor a 10 o mayor o igual a 50.
    Ejemplo:
    8 es menor o igual a 10
    9 es menor o igual a 10
    10 es menor o igual a 10
    11 es mayor a 10
    ...
    50 es mayor o igual a 50
    51 es mayor o igual a 50
    

  3. Teniendo una variable largo numérica, mostrar en pantalla todos los números pares desde cero hasta largo.

  4. Teniendo una variable inicio y otra largo ambas numéricas, mostrar el resultado de la suma de todos los números desde inicio a largo

  5. Hacer una lista html de largo variable, con cada elemento siendo elemento 1, elemento 2, .... elemento n.

  6. Hacer una tabla HTML de dos columnas, con numero de fila variables, siendo cada celda articulo N y precio N respectivamente

  7. Teniendo las variables "inicio" y "largo" numéricas, mostrar los números comprendidos entre ambas variables, de la siguiente manera:
    Ejemplo: para inicio=0 y largo= 10
    0,3,6,9.
    

  8. Si el numero que se esta mostrando es divisible entre 10, mostrar "fin" y no seguir con el listado
    Ejemplo: para inicio=0 y largo= 50
    0,3,6,9,12,15,18,21,24,27,30,FIN.
    
Hacer todos los ejercicios con while y for