You are on page 1of 16
Control semana 7 Gustavo bernard programacion Instituto ACC 11-05-2020 1, Una empresa que ofrece servicios de salud le pide a usted que programe en su pagina web un formulario de contacto como el que se muestra en la imagen: Formulario de contacto tte &: Qué propuesta de mejora considera que se le pueda plantear a este formulario? éCon ‘qué comands -tanto HTML como de PHP-se puede generar este requerimiento? Describa la programacién que implementaria en cada uno de los elementos del formulario a su criterio. R: En mi intento de darle una solucién a este problema desarrolle un nuevo formulario para cumplir con las expectativas del usuario. Formulario de contacto Completa el formulario y te responderemos a la brevedad Nombre Nombre comp Email Sexo: Hombre Telefono: Consulta: Imagen 1: Disefio de formulario, Como se puede mostrar en la Imagen 1 esté desatrollado el disefio del nuevo formulario. utilizando para ello solo cédigo HTML y para darle estilo a las letras, las cajas de texto y el botén se utilizé CSS. Ademds de agrego un menui desplegable para saber si es hombre o mujer, también se agregé que los campos nombre, email y teléfono deben ser llenados como requisito antes de enviar una consulta. CODIGO HTML: ~ principal eer faeries oe pit res ries a Sarit meen tt corer abe - lect name ae vanes es) ns eee eee el oie ot rere ate a ee i css: ‘Gaines le Me ae) escie erates display:bl Se us ey rerety Ce ees ferrewe) Pee) eee aaaaas Para la parte ldgica del formulario se utiliz6 cédigo PHP, para la recepcion de los datos que el usuario haya escrito en cada caja de texto. Para poder incluir cédigo PHP en mi index lo guarde con la extensién (index.php) y dentro de las etiquetas trabaje la parte légica, utllizando el método $_POST para recoger los datos que el usuario escribié en cada caja de texto mediante las variables Snombre, $email y $consulta. Luego utilice un if para comprobar si el usuario presiono el botén “Enviar consulta” y asi arrojar como resultado un mensaje de éxito “Se envid tu consulta”, Después de completar los datos y enviarlos, al usuario le aparece un mensaje de que hizo las cosas correctamente y los campos antes rellenados se limpian para enviar otra consulta, rFormuiario ae contacto Nombre: Nombre completo Correo electronico: ejemplo@email.com Telefono’ Telefono Consulta: Cuentanos tu duda Se envio tu consulta ‘ACA DEJO EL CODIGO:
Email: Consulta: onsulta" placeholde’ '.Svalue.'
" Por qué utilizar Iteradores SPL? Los objetos iteradores realizan la misma funcién que cuando se itera con arrays, pero a diferencia de éstos, pueden albegar una gran cantidad de datos y organizarlos més eficientemente Elloop foreach hace una copia de cualquier array que se le pase, por lo que si son muchos los datos que se tienen que iterar, hacer una copia de cada aay cada vez que se usen en un foreach puede resultar muy costoso, Los iteradores SPL encapsulan las listas de datos y muestran un elemento cada vez haciéndolo mucho mas eficiente. Los iteradores tambien facilitan el lazy loading, es decir, devuelven los datos sélo cuando se necesita. También se pueden manipular los datos antes de devolverlos al usuario. Usar o no usar iteradores SPL es una decision que depende del proyecto en el que se esté trabajando. Normalmente cuando se trabaja con una gran cantidad de datos es mas conveniente usarlos. Ejemplos: 1. Arrayiterator El constructor de la clase Arraylterator recibe un array como parimetro y proporciona meétodos con los que iterar mediante el objeto creado: Sanimales = ["perro", "gato", "Liebre", "toro", % // 3e crea un nuevo ArrayIterator y se pasa el array Siterador = new Arzayiterator (Sanimales) 7 // 80 hace Loop seach ( echo svalue) ( perro gato liebre toro conejo Normalmente se utiliza ArrayObject, una clase que permite trabajar con objetos como si fueran arrays. Esta clase crea directamente un Arraylterator cuando se usa un /oop foreach o cuando se llama al nétodo Arraylterator::getlterator() Conviene apuntar que tanto ArrayObjet como Arraylterator son objetos, y no se pueden usar faneiones de arrays en ellos. Anraylterator esti limitado a armays unidimensionales, de un solo nivel, Para poder utilizarlo en arrays nmultidimensionales se puede utilizar RecursiveArrayTterator. 2. ArrayAccess ArrayAccess es uma interface de PHP que permite dictar cémo se comportaré PHP cuando un objeto tenga una sintaxis de array (corchetes después del objeto). ArrayAccess silo tiene 4 funciones a implementar: offéerExists, offserGer, offierSer y offserUnset. Para implementar la interface sélo hay que declarar estos métodos en Ia clase: ass Animal implements ArrayAccess ( protected Sanimales; public Slugars public function offsetExiste (index) { return isset ($this->animales[$index]); ? public function offsetGet (Sindex) { if (Sthis-poffsetExists (Sindex)) { return $this->animales[Sindex] ; ? return false; } public function of etSet ($key, $value) { if (Skey) ( Sthis-ranimales [$key] = $value; ) else { Sthis->animales[] = $value; } return true; } public function offsetunset (Sindex) { unset ($this-animales [$index]) ¢ return true; } public function getAnimales() { return Sthis->animales; } } Podemos usar las propiedades y métodos de forma normal como en cualquier objeto, pero ademés podemos usar la sintaxis de array para manipular Sanimales: Sanimal = new Animal; Sanimal->lugar = "Asia y Sanimal{] - "Oso panda"; Sanimal[] = "Koala"s Sanimelos = Sanimsl—>getAnimales (); reach (Sanimales as Sanim) { echo Sanim . "
"; } Vn Devuelve oso panda Koala ae ay cee ae roe oeerertat alse ees ecotea pees "; echo "
"; for($r=0;Sr<3;$r++){ echo Snivel[$r]; for(Se=0;Se<4;Se++) { if (Sc==0){ if(Sr He echo "&inbsp"; Jelse{ echo " &inbsp &inbsp &inbsp"; } Sre[Sr] += Saa[Sr][Sc]; Srf[Sc] += Saa[Sr] [Sc]; a iff$e echo "&inbsp  &inbsp"; echo " &inbsp  "; echo "  &inbsp"; > 0){ echo "  "; "; ‘echo "
"; } echo" echo "
"; echo" for($c=0;$c<4;Sc++) { echo " &inbsp &inbsp  &ndsp &inbsp    &nb sp "; } if (Se>4y{ echo "&inbsp &inbsp"; } echo "    " > <2php echo Srf[Sc] ? > Bibliogratia IAC (2018). Formularios. Programacién. Semana 7.

You might also like