SlideShare una empresa de Scribd logo
1 de 236
Descargar para leer sin conexión
INSTITUTO TECNOLOGICO
HUAQUILLAS
“POST - BACHILLERATO”
PORTAFOLIO DE
OPTATIVA I
DOCENTE:
Ing. HECTOR MENA
ALUMNO
LUIS CALERO
CURSO:
CUARTO NIVEL –
INFORMATICA “A”
AÑO LECTIVO:
2014 – 2015
Y
PORTAFOLIO DE
OPTATIVA I
PHP es un lenguaje de programación de uso general de código
del lado del servidor originalmente diseñado para el desarrollo
web de contenido dinámico. Fue uno de los primeros lenguajes
de programación del lado del servidor que se podían incorporar
directamente en el documento HTML en lugar de llamar a un
archivo externo que procese los datos. El código es interpretado
por un servidor web con un módulo de procesador de PHP que
genera la página Web resultante. PHP ha evolucionado por lo
que ahora incluye también una interfaz de línea de comandos
que puede ser usada en aplicaciones gráficas independientes.
Puede ser usado en la mayoría de los servidores web al igual
que en casi todos los sistemas operativos y plataformas sin
ningún costo.
INTRODUCCION
AL LENGUAJE DE
PROGRAMACION
PHP
AGRADECIMIENTO
Este portafolio es el resultado del esfuerzo y dedicación, por esto agradezco a nuestro
profesor al Ing. Héctor Mena, mis compañeros, quienes a lo largo de este tiempo han
puesto a prueba sus capacidades y conocimientos en el desarrollo de este trabajo. A mis
padres quienes a lo largo de toda mi vida han apoyado y motivado mi formación
académica, creyeron en mí en todo momento y no dudaron de mis habilidades. A mis
profesores a quienes les debo gran parte de mis conocimientos, gracias a su paciencia y
enseñanza y finalmente un eterno agradecimiento a esta prestigiosa institución la cual
abrió sus puertas a jóvenes como nosotros, preparándonos para un futuro competitivo y
formándonos como personas de bien.
Luis Alberto Calero Romero
DEDICATORIA
Dedico este portafolio a Dios y a mis padres. A Dios porque ha estado conmigo a cada
paso que doy, cuidándome y dándome fortaleza para continuar, a mis padres, quienes a
lo largo de mi vida han velado por mi bienestar y educación siendo mi apoyo en todo
momento. Depositando su entera confianza en cada reto que se me presentaba sin dudar
ni un solo momento en mi inteligencia y capacidad. Es por ellos que soy lo que soy
ahora. Los amo con mi vida.
Luis Alberto Calero Romero
SÍLABO DE OPTATIVA I
Carrera de Tecnología Informática
I. DATOS GENERALES.-
1.1. DENOMINACIÓN DEL
MÓDULO
Optativa I
1.2. SEMESTRE DE ESTUDIOS Cuarto Semestre
1.3. ESPECIALIZACIÓN Informática
1.4. JORNADA Nocturna
1.5. NÚMERO DE ALUMNOS 40 alumnos paralelo “A”
1.6. NÚMERO DE CRÉDITOS 5
1.7. PRERREQUISITOS
Conocimientos sobre Base de Datos,
Programación orientado a objetos.
1.8. CORREQUISITOS
Trabajo investigativo
Trabajo grupal
Investigación de campo
1.9. TIPO DE MÓDULO Formativo
1.10. SEMESTRE Marzo del 2014 a Mayo del 2014
1.11. FECHA DE INICIO 10 de Marzo del 2014
1.12. FECHA DE TÉRMINO 19 de Mayo del 2013
1.13. PERIODOS SEMANALES 5 periodos
1.14. DURACIÓN EN HORAS 80 Horas
1.15. HORAS PRESENCIALES 80 Horas
1.16. DOCENTE RESPONSABLE Ing. Hector Mena
II. FUNDAMENTACIÓN
La creciente demanda del WWW ha permitido el nacimiento de los lenguajes de
programación web, permitiendo crear paginas dinámicas con conexión a una base de
datos.
PHP, es un lenguaje de programación que ha venido creciendo año tras año,
haciendo que la curva de aprendizaje de este sea menor frente a otros lenguajes de
programación.
En PHP podemos generar aplicaciones totalmente dinámicas, lo cual significa
menos tiempo de programación frente a las paginas estáticas, además este lenguaje
de programación ofrece un gran soporte a la mayoría de las base de datos existentes
en la actualidad. Así mismo una de las grandes empresas como Facebook,
decidieron montar todo el núcleo de la aplicación en PHP.
PHP hace posible resolver problemas en un entorno web, independiente del sistema
operativo donde el usuario final lo ejecute, permitiendo ejecutar las aplicaciones
desarrolladas en cualquier plataforma posible siempre y cuando se cuente con un
explorador web.
III. COMPETENCIAS GENERALES
a. Conocer las bondades y beneficios que un lenguaje de programación web ofrece,
frente a los lenguajes de programación de escritorio.
b. Comprender los conceptos básicos de programación en PHP
c. Comprender las infinidades de aplicaciones que se pueden desarrollar en PHP.
d. Instalar un servidor apache y MySQL.
IV. APORTES TEÓRICOS
1 INTRODUCCIÓN A PHP
1.1 Terminología de PHP.
1.2 Historia y usos y ejemplos de éxito de PHP.
1.3 Terminología y uso de XAMPP
1.4 Historia y uso de Apaches.
2 TIPOS DE DATOS Y VARIABLES EN PHP
2.1 Conceptos de variables
2.2 Manejo de variables
2.2.1 Concatenación de cadenas de caracteres.
2.2.2 Manejo de variables numéricas.
3 ESTRUCTURAS SELECTIVAS Y REPETITIVAS
3.1 Estructuras selectivas
3.1.1 Concepto, estructura y manejo de IF.
3.1.2 Concepto, estructura y manejo de IF y ELSE.
3.2 Estructuras repetitivas
3.2.1 Concepto, estructura y manejo de FOR.
3.2.2 Concepto, estructura y manejo de WHILE.
3.2.3 Concepto, estructura y manejo de DO WHILE.
3.2.4 Concepto, estructura y manejo de FOREACH.
4 COMPONENTES HTML
4.1 Uso y funcionamiento del form.
4.2 Uso y funcionamiento del text.
4.3 Uso y funcionamiento del checkbox.
4.4 Uso y funcionamiento del radio button.
4.5 Uso y funcionamiento del select.
4.6 Uso y funcionamiento del img.
4.7 Uso y funcionamiento del textarea.
4.8 Uso y funcionamiento del campo oculto.
4.9 Uso y funcionamiento del password.
4.10 Uso y funcionamiento de tablas.
5 VECTORES Y ARCHIVOS
5.1 Introducción a vectores.
5.2 Declaración de vectores.
5.3 Uso de vectores.
5.4 Introducción a vectores asociativos.
5.5 Declaración de vectores asociativos.
5.6 Uso de vectores asociativos.
5.6 Introducción a archivos usos.
5.6 Leer un archivo con PHP.
5.6 Escribir en un archivo con PHP.
6 PROGRAMACION ORIENTADA A OBJETOS
6.1 Introducción a funciones.
6.2 Declaración y uso de funciones.
6.3 Introducción a clases.
6.4 Declaración y uso de clases.
7 CONEXIÓN A MySQL
6.1 Introducción a MySQL.
6.1 Creación de un base de datos en MySQL.
6.1 Conexión de PHP a MySQL.
6.1 Insertar valores en MySQL desde PHP.
6.1 Actualizar valores en MySQL desde PHP.
6.1 Eliminar valores en MySQL desde PHP.
6.1 Seleccionar valores en MySQL desde PHP.
V. ESTRATEGIAS METODOLÓGICAS
Se aplicará permanentemente las siguientes estrategias metodológicas:
 Dinámicas Grupales
 Trabajo autónomo
 Trabajo grupales
 Prácticas
 Aportes individuales
 Debates
 Evaluación y análisis de resultados.
VI. MATERIALES EDUCATIVOS Y OTROS RECURSOS DIDÁCTICOS
 Textos de consulta
 Programa del módulo
 Marcadores
 Pizarra
 Organizadores gráficos
 Las Tic's
 Diapositivas
 Laboratorio de computación
VII. CAPACIDADES ESPECÍFICAS A DESARROLLARSE
 Conocer PHP como lenguaje de programación web para la creación de
páginas dinámicas.
 Diferenciar las diferencias entre un lenguaje de programación en entorno
web y un lenguaje de programación sobre los entornos de escritorios.
 Creación de sistemas informáticos en entorno web.
VIII. CONTEXTO DE APLICACIÓN
 Crear una aplicación web con MySQL como motor de base de datos, con la
finalidad de afrontarse a un problema de la vida real, donde puedan emplear
lo aprendido.
IX. TRABAJO AUTÓNOMO
o Conocer los beneficios de PHP frente a otros lenguajes.
o Utilización de PHP, como una opción al momento de programar una
aplicación.
o Emplear MySQL como motor de base de datos por defecto para PHP
X. INDICADORES, TÉCNICAS E INSTRUMENTOS DE EVALUACIÓN
PARÁMETRO DE EVALUACIÓN DE PROCESO
ACTIVIDADES ACADÉMICAS VALORACIÓN
NUMÉRICA
Intraclase Participación en clase 4
Participación grupal (Talleres)
Lecciones
Exposiciones
Extraclase Deberes 2
Proyecto
Evaluación Evaluación por créditos 4
NOTA FINAL MÁXIMA (10/10) 10 PUNTOS
XI. BIBLIOGRAFÍA
 COBO, Àngel. PHP y MySQL tecnología para el desarrollo de aplicaciones
web. Dìaz de Santos. Primera Edición. 2005. Madrid
 Heurtel, Oliver. PHP y MySQL domine el desarrollo de un sitio web dinámico e
interactivo. Ediciones ENI. Primera Edición edición. 2009. Barcelona
 David, Sklar, Trancbtenberg, Adam. PHP cookbook. O‟REILLY . Primera
edición. 2003
 Powers, David. Desarrollo web dinámico con Dreamweaver 8 y PHP. Anaya
Multimedia-Anaya interactiva. 2006
 Welling, Luke. Thomson, Laura. PHP and MySQL Web Development.Sams
Publishing. Segunda edición. 2003
 Holsner, Steven. Manual avanzado de PHP 5, Grupo Anaya, Primera edición,
2005.
XII. INTEGRIDAD ACADÉMICA
Los trabajos que no se presenten la fecha y la hora indicada tendrá un equivalente a
la mitad de la valoración, solo en casos especiales debidamente justificados se
calificará sobre el mismo valor.
Las evaluaciones que no se den el día y la hora señalada tendrán una asignación de
dos puntos sobre diez, excepto en casos especiales los mismos que deben ser
autorizados por la máxima autoridad del plantel.
Si se encuentra un trabajo y/o informe como un plagio que atenta a la honestidad e
integración de cada estudiante, serán anulados los trabajos o informes y obtendrá
una valoración de dos a los trabajos de plagio.
XIII. FIRMA DE RESPONSABILIDAD
 DOCENTE: Ing. Héctor Mena
 CELULAR: 0991423964
 EMAIL: patos803@hotmail.com
 DIRECCIÓN: Huaquillas, 9 de Octubre entre Carchi e Imbabura.
FIRMA DEL DOCENTE FIRMA DE LA DIRECTORA
FORMATO DE SÍLABO
FECHA APORTES TEÓRICOS CAPACIDADES ESPECÍFICAS
A DESARROLLARSE
HORAS DE
CLASE
CONTEXTO DE
APLICACIÓN
TRABAJO AUTÓNOMO
Del 10 al 12
de Marzo
del 2014
INTRODUCCIÓN A PHP
Terminología de PHP.
Historia y usos y ejemplos de
éxito de PHP.
Terminología y uso de XAMPP
Historia y uso de Apaches.
Conocer el lenguaje de
programación PHP, historia,
orígenes y empresas que
trabajan actualmente con
él.
6hs
 Elaboración de un cuadro
sinóptico con los datos
relevantes de los conceptos.
Del 14 al
19 de
Marzo del
2014
TIPO DE DATOS Y VARIABLES
Conceptos de variables
Manejo de variables
Concatenación de cadenas de
caracteres.
Manejo de variables
numéricas.
Diferenciar e interpretar el
manejo de los tipos de
datos y variables en PHP. 8hs.
 Trabajo en equipo.
 Elaboración de organizadores
gráficos.
Del 21 al
26 de
Marzo del
2014
ESTRUCTURAS SELECTIVAS Y
REPETITIVAS
Estructuras selectivas
Concepto, estructura y
manejo de IF.
Concepto, estructura y
manejo de IF y ELSE.
Estructuras repetitivas
Concepto, estructura y
manejo de FOR.
Concepto, estructura y
manejo de WHILE.
Concepto, estructura y
manejo de DO WHILE.
Concepto, estructura y
manejo de FOREACH.
Conocer y manejar las
estructuras selectivas y
repetitivas dentro de PHP.
8hs.
 Ejercicios Prácticos.
 Preguntas de Reflexión
 Práctica Dirigida.
 Evaluación.
Del 28 de
Marzo al 9
de Abril del
2014
COMPONENTES HTML
Uso y funcionamiento del
form.
Uso y funcionamiento del
text.
Uso y funcionamiento del
checkbox.
Uso y funcionamiento del
radio button.
Uso y funcionamiento del
select.
Uso y funcionamiento del
img.
Uso y funcionamiento del
textarea.
Conocer y dominar los
componentes más
indispensables existentes
en HTML.
16hs.
 Ejercicios Prácticos.
 Preguntas de Reflexión.
 Práctica Dirigida.
 Trabajo en equipo
 Evaluación.
Uso y funcionamiento del
campo oculto.
Uso y funcionamiento
Uso y funcionamiento de
tablas.
Del 11 al 16
de Abril del
2014
VECTORES Y ARCHIVOS
Introducción a vectores.
Declaración de vectores.
Uso de vectores.
Introducción a vectores
asociativos.
Declaración de vectores
asociativos.
Uso de vectores asociativos.
Introducción a archivos usos.
Leer un archivo con PHP.
Escribir en un archivo con
PHP.
Diferencias los distintos
tipos de vectores existentes
en PHP, junto con la
creación y lectura de
archivos en PHP
8hs.
 Ejercicios Prácticos
 Preguntas de Reflexión.
 Trabajo en equipo
 Evaluación.
Del 18 de
Abril al 7 de
Mayo del
2014
PROGRAMACION
ORIENTADA A OBJETOS
Introducción a funciones.
Declaración y uso de
funciones.
Introducción a clases.
Declaración y uso de clases.
Conocer y Dominar la
programación orientada a
objetos asi como la
creación de funciones
dentro de PHP.
20hs.
 Ejercicios Prácticos
 Trabajo en equipo
 Preguntas de Reflexión.
Luis calero
LENGUAJES DE PROGRAMACIÓN
QUÉ ES UN LENGUAJE DE PROGRAMACIÓN
El "cerebro" de un ordenador es la Unidad Central de Procesamiento (CPU). En general
una CPU no puede almacenar más que unos pocos números y realizar operaciones
matemáticas básicas con ellos. Además esos números se pueden recibir de o enviar a la
memoria o a los distintos dispositivos de entrada y salida (teclado, monitor, disco duro,
impresora, etc). Para cada una una de estas operaciones (obtener números de un sitio,
hacer cálculos con esos valores, enviar el resultado a otro sitio) existe una instrucción
diferente y cada CPU tiene su propio juego de instrucciones, más o menos amplio
dependiendo de la complejidad de la CPU.
En la memoria del ordenador se puede guardar una secuencia de esas instrucciones, que
el ordenador es capaz de seguir desde el principio hasta el final (aunque esas
instrucciones no tienen por qué ejecutarse siempre en el mismo orden porque existen
instrucciones para saltar de un punto a otro de la secuencia de instrucciones). Esas
secuencias se llaman programas ejecutables.
Cualquier función que realice un ordenador, por sofisticada que parezca, en realidad no
es más que una larga secuencia de instrucciones elementales. Para los humanos resulta
muy complicado escribir directamente los programas ejecutables porque cualquier tarea
requiere muchísimos pasos, que el ordenador ejecuta de forma instantánea, pero para
que los ordenadores funcionen es necesario disponer de programas ejecutables.
Existen muchos lenguajes de programación diferentes, pero en general, un programador
que quiere conseguir que el ordenador realice determinadas operaciones, tiene que
seguir estos pasos:
 El programador escribe una secuencia de instrucciones siguiendo las reglas de
un lenguaje de programación. Esa secuencia de instrucciones se guarda en uno o
varios archivos de texto. A estos archivos se les llama código fuente del
programa.
 Mediante un programa especial (llamado compilador o intérprete) capaz de
realizar esa tarea el ordenador convierte los archivos de texto en archivos
ejecutables, es decir, traduce la secuencia de instrucciones escritas por el
programador en instrucciones. A estos archivos ejecutables se les
llama programas ejecutables.
 El programador o cualquier otro usuario le puede pedir al ordenador que ejecute
el programa ejecutable.
En el ejemplo citado de las ráices cuadradas, el compilador o intérprete tendría que ser
capaz de convertir la instrucción de raíz cuadrada que hubiera escrito el programador en
una serie de sumas, restas, multiplicaciones o divisiones que acaben dando el resultado
deseado.
PÁGINAS, WEB, LENGUAJES DE PROGRAMACIÓN Y BASES DE DATOS
La World Wide Web (o simplemente, la web) fue ideada por Tim Berners Lee en 1990,
empezó a funcionar en el CERN en 1991 y se extendió rápidamente por las
Universidades del mundo (en aquel entonces Internet era una red a la que sólo tenían
acceso entidades gubernamentales, particularmente entidades educativas). En 1992
algunos proveedores comerciales empezaron a dar acceso a particulares y empresas, lo
que popularizó todavía más la web.
En aquellos años, las páginas web solían ser documentos de texto guardados en algún
directorio de un servidor y a los que se podía acceder mediante los primeros
navegadores web. Cada página web que se veía en el navegador correspondía a un
fichero en el servidor.
La imagen siguiente ilustra de forma simplificada el esquema de funcionamiento:
 El usuario escribe la dirección de la página web en su navegador
 El navegador la solicita al servidor web correspondiente (este paso requiere la
participación de máquinas intermedias que no se comentan aquí)
 El servidor lee el fichero que corresponde a esa página web
 El servidor envía el fichero al navegador
 El navegador muestra la página web al usuario
Este esquema de funcionamiento es suficiente para sitios web pequeños creados por una
sola persona, pero en cuanto un sitio web empieza a crecer, empiezan a surgir los
problemas. Por ejemplo:
 si el sitio contiene muchas páginas es necesario crear menús que permitan
orientarse por el sitio. Como cada página debe contener el menú, cualquier
cambio en el menú obliga a modificar todas las páginas.
 si el sitio modifica a menudo su contenido (por ejemplo, la web de un
periódico), tener que editar manualmente los ficheros ralentiza el proceso.
 si el sitio es creado por varias personas, cualquiera puede modificar por error los
ficheros de otras personas y si varias personas quieren modificar el mismo
fichero se pueden producir conflictos.
 si se quiere permitir la participación del público (foros, comentarios en blogs,
etc), esta participación depende de que uno de los autores modifique los
ficheros, lo que ralentiza el proceso.
 si personas sin conocimientos técnicos quieren participar en la creación del sitio,
pueden cometer errores editando los ficheros.
La solución es que las páginas no sean ficheros estáticos guardados en el disco, sino que
se generen cuando el usuario las solicite.
Por ejemplo, para resolver el problema de los menús comentado anteriormente, una
solución sería que el menú estuviera en un fichero aparte y cuando el usuario solicitara
una página, el menú se añadiera al principio de cada página (nota: no me refiero a la
composición de páginas mediante frames, una solución desaconsejada hace muchos
años, sino a componer un único fichero a partir de varios).
Esa generación de las páginas se puede hacer de varias maneras. Una de ellas es recurrir
a lenguajes de programación generales o específicos (como PHP). Desde sus inicios, los
servidores web permiten recurrir a lenguajes de programación para generar las páginas
web.
La imagen siguiente ilustra de forma simplificada el esquema de funcionamiento:
 El usuario escribe la dirección de la página web en su navegador
 El navegador la solicita al servidor web correspondiente (este paso requiere la
participación de máquinas intermedias que no se comentan aquí)
 El servidor detecta que no es un documento ya existente sino que tiene que
generarse, así que recurre al intérprete del lenguaje
 El intérprete del lenguaje ejecuta el programa y la salida del programa se envía
al servidor
 El servidor envía el fichero al navegador
 El navegador muestra la página web al usuario
Es importante señalar que al usuario le resulta indiferente que la página estuviera
guardada en el disco duro o que se haya generado en ese momento, de la misma manera
que le resulta indiferente el lenguaje de programación que haya generado el documento.
El navegador recibe el documento en ambos un documento de texto que contiene
etiquetas html y lo muestra al usuario.
A veces, el usuario puede suponer que la página que se le está sirviendo se ha generado
mediante PHP ya que la dirección de la página termina por .php en vez del habitual
.html, aunque no se puede estar seguro de que sea realmente así.
Pero el uso de lenguajes de programación no suele ser suficiente. Si la información está
diseminada en multitud de trozos para organizar y acceder fácilmente a toda esa
información, es conveniente utilizar algún sistema gestor de bases de datos. Existen
muchos sistemas gestores de bases de datos y cualquier lenguaje de programación puede
conectarse a ellas y realizar consultas.
La imagen siguiente ilustra de forma simplificada el esquema de funcionamiento:
 El usuario escribe la dirección de la página web en su navegador
 El navegador la solicita al servidor web correspondiente (este paso requiere la
participación de máquinas intermedias que no se comentan aquí)
 El servidor detecta que no es un documento ya existente sino que tiene que
generarse, así que recurre al intérprete del lenguaje
 El intérprete del lenguaje ejecuta el programa, que requiere ejecutar consultas al
sistema gestor de bases de datos y la salida del programa se envía al servidor
 El servidor envía el fichero al navegador
 El navegador muestra la página web al usuario
Como antes, al usuario le resulta indiferente que se haya accedido o no a un sistema
gestor de bases de datos. El navegador recibe el documento en ambos un documento de
texto que contiene etiquetas html y lo muestra al usuario.
TERMINOLOGIA DE PHP
PHP, acrónimo de "PHP: Hypertext Preprocessor", es un lenguaje de 'scripting' de
propósito general y de código abierto que está especialmente pensado para el desarrollo
web y que puede ser embebido en páginas HTML. Su sintaxis recurre a C, Java y Perl, y
es fácil de aprender. La meta principal de este lenguaje es permitir a los desarrolladores
web escribir dinámica y rápidamente páginas web generadas; aunque se puede hacer
mucho más con PHP.
PHP es un lenguaje de alto nivel que se ejecuta en el servidor. El significado de las
siglas PHP es pre-procesamiento de hipertexto, es decir, PHP procesa el hipertexto o
HTML y lo devuelve para que el navegador pueda interpretarlo. Así, por ejemplo,
podemos leer el contenido de una base de datos.
Aunque pueda parecer extraño, no es posible crear una página Web únicamente con
lenguaje PHP. PHP necesita escribir un código interpretable por el navegador para
expresar las acciones que desarrolla. Así programar en PHP implica saber programar en
HTML, en CSS o en javascript.
Los lenguajes de creación de página Web más usados son HTML, javascript y CSS; y
estos lenguajes se pueden ejecutar en el mismo ordenador del usuario. Sin embargo
PHP no se puede ejecutar en un ordenador de la misma manera que los hace HTML,
javascript o CSS. Para que pueda ejecutarse debemos instalar un servidor para PHP en
nuestro ordenador. Aunque hay paquetes de software que instalan todos los
componentes como Apache, PHP y un administrador de bases de datos como
PHPMyAdmin, lo más rápido es crear tus script y subirlos a un servidor listo para
operar con PHP. No todos los servidores, es especial los gratuitos, soportan PHP.
HISTORIA Y USOS Y EJEMPLOS DE ÉXITO DE PHP
Es importante señalar que la evolución de PHP es diferente a la de otros lenguajes de
programación. No hay ningún organismo encargado de la definición del lenguaje PHP
(y empresas que implementan esa definición en diferentes compiladores o intérpretes),
sino que el lenguaje evoluciona a la vez que lo hace el intérprete "oficial" de PHP
publicado desde la versión 4 por la empresa Zend. Existen otros motores, como Hip-
hop creado por Facebook, pero son minoritarios. Aunque el lenguaje y el intérprete son
cosas conceptualmente distintas, es habitual referirse a ambos como PHP.
PHP (el intérprete) ha sido publicado siempre como software libre, con una licencia
llamada licencia PHP. Esta licencia es una licencia libre sin copyleft. Como la licencia
impone restricciones al uso del término PHP en productos derivados, esta licencia es
incompatible con la licencia GPL, por lo que la Free Software Foundation recomienda
que sólo se utilice para programar extensiones del propio PHP.
PHP fue creado por Rasmus Lerdorf en 1995. El nombre PHP significaba
entonces Personal Home Page y hacía referencia a que era un lenguaje diseñado para
facilitar la generación de páginas web, en primer lugar en el sitio web personal de
Rasmus Lerdorf y rápidamente en muchos sitios. Desde entonces, PHP no ha dejado de
evolucionar, proporcionando nuevas características.
En noviembre de 1997 Rasmus Lerdorf publicó una segunda versión del lenguaje, PHP2
En junio de 1998 se publicó PHP 3. Esta versión fue creada por Zeev Suraski y Andi
Gutmans, que desde entonces dirigen el desarrollo de PHP (con la colaboración de
Lerdorf). A partir de esta versión PHP significa PHP: Hypertext
Preprocessor (añadiéndose a la lista de acrónimos recursivos como GNU, Lame, Wine,
RPM, etc.). La característica más decisiva de esta versión fue la mejora de la
extensibilidad del lenguaje, permitiendo que muchos programadores aportaran nuevos
módulos, pero esta versión también simplificó la sintaxis del lenguaje e introdujo la
posibilidad de utilizar una sintaxis orientada a objetos.
En 1999 Zeev Surski y Andi Gutmans crearon la empresa Zend Technologies, que
desarrolla productos basados en PHP (servidores, editores, etc.).
En mayo de 2000 se publicó PHP 4, que incluía un nuevo motor llamado Zend Engine.
Esta versión era bastante más rápida que la anterior y añade nuevas características como
las sesiones.
En julio de 2004 se publicó PHP 5, que incluía un nuevo motor llamado Zend Engine 2.
La característica más importante de esta versión es la mejora de la programación
orientada a objetos.
La siguiente versión prevista, que se tendría que publicar como PHP 6, se fijó el
objetivo de dar a PHP soporte completo de Unicode, el juego de caracteres universal.
Pero ese objetivo ha resultado ser mucho más difícil de conseguir de lo esperado y en
2010 prácticamente se tiró la toalla y sigue sin estar claro si se alcanzará el objetivo.
Mientras tanto, se han ido publicando versiones 5.X que han ido introduciendo
bastantes novedades en el lenguaje (5.3 publicada en junio de 2009, 5.4 publicada en
marzo de 2012 y 5.5 publicada en junio de 2013).
A EVOLUCIÓN DE PHP EN EL TIEMPO. LAS VERSIONES.
PHP 3
PHP 3.0, liberada en 1998, era la primera versión que se parecía fielmente al PHP tal y
como lo conocemos hoy en día.
Una de las mejores características de PHP 3.0 era su gran extensibilidad. Cuando
hablamos de extensibilidad nos referimos a la existencia de un núcleo o core al que se le
pueden ir añadiendo fragmentos de código que permiten hacer más cosas. Se trataría de
algo parecido a tener una base sobre la que podemos ir añadiendo piezas. Veamos una
imagen:
En esta imagen, correspondiente a los juegos de niños armables “Lego”, vemos cómo
existe una base verde. Esa base sería el core o núcleo de PHP. Luego, aprovechando que
esa base tiene preparados los anclajes para seguir poniendo piezas, vemos que se le han
añadido extensiones. Por ejemplo, la primera extensión que tiene una base azul podría
ser una extensión que permita la gestión de correos electrónicos. La segunda extensión,
que tiene una base verde, podría ser una extensión para gestionar imágenes, y así
sucesivamente…
Además de facilitar el trabajo con muchas bases de datos, protocolos y sistemas
informáticos, las características de extensibilidad de PHP 3.0 atrajeron a muchos
programadores a unirse al proyecto y enviar nuevos módulos de extensión. Esta fue la
clave del enorme éxito de PHP 3.0: que fue un proyecto abierto al que se unieron
muchos programadores formando una comunidad.
Todo el nuevo lenguaje fue liberado con el nombre de 'PHP', con el significado de ser
un acrónimo juego de las letras iniciales de “Hypertext Preprocessor”.
A partir de su lanzamiento, PHP creció pasando a ser usado por miles de
programadores y cientos de miles de sitios Web. Se estima que PHP 3.0 conquistó una
fracción del total de servidores mundiales de en torno al 10 %, lo cual fue un éxito
rotundo.
PHP 4
La principal novedad de PHP 4 está en el intérprete del lenguaje PHP. Con la nueva
versión se lograron aumentos de entre 5 y 10 veces en la velocidad de ejecución de
páginas PHP respecto a la versión anterior, lo cual fue un salto muy importante.
Además del aumento en rendimiento, se introdujeron novedades relacionadas con el
soporte de objetos en PHP. La programación orientada a objetos es una forma avanzada
de programación y gracias a estas características PHP se encuentra entre los lenguajes
de vanguardia. Otra nueva característica de PHP 4 fue que podía soportar hilos cosa que
en PHP 3 no era posible. Un hilo es básicamente una tarea que puede ser ejecutada en
paralelo con otra tarea. La principal ventaja que podemos obtener de esta funcionalidad
es que se pueden estar haciendo varias cosas al mismo tiempo sin tener que esperar a
que se termine una tarea para empezar otra. Para los programadores, PHP 4 incluía un
depurador. Un depurador viene siendo un asistente que nos ayuda a detectar dónde se
encuentran los errores en los programas o código de desarrollo. Esto ayuda mucho al
programador y le evita quebraderos de cabeza por no poder localizar errores. Gracias al
depurador, se podían seguir con mayor profundidad esos errores “misteriosos” que
hacían perder mucho tiempo.
PHP 5
La principal característica de PHP 5 con respecto a PHP 4 es la mejora en la
programación orientada a objetos (POO). Aunque este tipo de programación ya se había
introducido en el lenguaje desde PHP 3, las versiones anteriores a PHP 5 tenían
bastantes limitaciones para el uso de este tipo de programación.
La orientación a objetos es una manera de programar que es muy usada hoy en día. No
entraremos en detalles sobre ella de momento, porque es algo avanzado dentro de la
programación y en este curso trataremos de avanzar poco a poco desde lo más básico
hasta lo más complejo.
El principal objetivo de PHP 5 ha sido mejorar los mecanismos de programación
orientada a objetos para solucionar las carencias de las anteriores versiones. El resultado
ha sido un lenguaje más potente, que cada vez es más popular y que cada vez se usa
más, tanto a nivel profesional en empresas como a nivel de usuarios que quieren
construir pequeñas páginas o portales web.
Algunas personas dicen que PHP se parece cada vez más a Java, que es quizás el
lenguaje de programación más usado en el mundo, y que también es un lenguaje de
programación orientado a objetos.
¿QUÉ VERSIÓN DE PHP USAR?
La versión de PHP a usar depende en gran medida de qué desarrollo queramos hacer.
Por ejemplo, si vamos a usar PHP para el gestor de contenidos Joomla 1.0, no es lo
mismo que si vamos a usarlo para Joomla 1.5 porque cada uno tiene sus propias
necesidades en cuanto a la versión de PHP a usar. Es decir, cada aplicación debe ir con
su versión de PHP adecuada al igual que a un vehículo a motor debemos echarle el tipo
de combustible adecuado. Si a un coche diesel le echamos gasolina, no funcionará bien.
Si una aplicación que fue concebida para PHP 4 la intentamos ejecutar usando PHP 5,
probablemente ocurra lo mismo: no funcionará bien.
También debemos tener en cuenta que usar siempre la última versión de algo tiene sus
riesgos. Por ejemplo las últimas versiones no suelen estar tan testeadas como las
anteriores y se pueden producir „agujeros de seguridad‟ que tendremos que tapar con
algún parche.
CRÍTICAS A PHP
Como cualquier lenguaje de programación, es fácil encontrar en las web opiniones muy
críticas hacia PHP, sobre todo en referencia a la seguridad. Al leer estas críticas hay que
tener en cuenta que:
 PHP ha evolucionado mucho. Muchos defectos del lenguaje han sido corregidos
en versiones posteriores, por lo que conviene comprobar si las opiniones que se
leen no son opiniones antiguas que ya no tienen sentido. Por el mismo motivo,
hay que tener cuidado cuando se leen manuales o tutoriales antiguos, porque
pueden estar recomendando técnicas de programación obsoletas.
 PHP es extremadamente popular. Muchos programas de PHP han sido escritos
por programadores que intentan compensar con su entusiasmo su falta de
conocimientos, pero PHP no es un lenguaje intrínsecamente malo o inseguro.
QUE ES EL XAMPP
XAMPP es un servidor independiente de plataforma de código libre. Te permite instalar
de forma sencilla Apache en tu propio ordenador, sin importar tu sistema
operativo (Linux, Windows, MAC o Solaris). Y lo mejor de todo es que su uso es
gratuito. XAMPP incluye además servidores de bases de datos como MySQL y
SQLite con sus respectivos gestores phpMyAdmin y phpSQLiteAdmin. Incorpora
también el intérprete de PHP, el intérprete de Perl, servidores de
FTP como ProFTPD ó FileZilla FTP Serve, etc. entre muchas cosas más.
Si alguna vez has intentado instalar Apache, sabes que no es una tarea fácil, sin
embargo con XAMPP todo es diferente. Una de las ventajas de usar XAMPP es que su
instalación es de lo más sencilla, basta descargarlo, extraerlo y comenzar a usarlo.
PARA QUÉ SIRVE
Como ya lo debes haber deducido, XAMPP es una herramienta de desarrollo que te
permite probar tu trabajo (páginas web o programación por ejemplo) en tu propio
ordenador sin necesidad de tener que accesar a internet.
Si eres un desarrollador que recién está comenzando, tampoco debes preocuparte sobre
las configuraciones ya que XAMPP te provee de una configuración totalmente
funcional desde el momento que lo instalas (básicamente lo extraes). Sin embargo, es
bueno acotar que la seguridad de datos no es su punto fuerte, por lo cual no es
suficientemente seguro para ambientes grandes o de producción.
Paquetes que vienen con XAMPP
Paquetes básicos:
 Apache, el servidor Web más famoso.
 MySQL, una excelente base de datos de código libre.
 PHP y Perl: lenguajes de programación.
 ProFTPD: un servidor FTP.
 OpenSSL: para soporte a la capa de sockets segura.
Paquetes gráficos:
 GD (Graphics Draw): la librería de dibujo de gráficos.
 libpng: la librería oficial de referencia de PNG.
 libpeg: la librería oficial de referencia de JPEG.
 ncurses: la librería de gráficos de caracteres.
Paquete de bases de datos:
 gdbm: la implementación GNU de la librería standard dbm de UNIX.
 SQLite: un motor de base de datos SQL muy pequeño y cero configuración.
 FreeTDS: una librería de base de datos que da a los programas de Linux y UNIX
la habilidad de comunicarse con Microsoft SQL y Sybase.
Paquetes XML:
 expat: una librería parser de XML.
 Salbotron: una toolkit de XML.
 libxml: un parser C de XML y un toolkit para GNOME.
Paquetes PHP:
 PEAR: la librería de PHP.
 Una clase pdf que genera documentos PDF dinámicos con PHP.
 TURCK MMCache: un potenciador de la performance de PHP.
Otros paquetes:
 zlib: una librería de compresión.
 mod_perl: empotra un intérprete de Perl en Apache.
 gettext: un conjunto de herramientas que asiste a los paquetes GNU para
producir mensajes multilingües.
INSTALACIÓN DE XAMPP
INSTALACIÓN DE LAS APLICACIONES
Nota: Antes de instalar un servidor de páginas web es conveniente comprobar si no hay
ya uno instalado. Para ello, es suficiente con abrir el navegador y escribir la
dirección http://localhost. Si no se obtiene un mensaje de error es que hay algún
servidor de páginas web instalado.
Estos apuntes están preparados para la versión XAMPP 1.8.3.2 (del 4 de diciembre
2013), que incluye Apache 2.4.7, PHP 5.5.6, MySQL 5.6.14 y otras utilidades,.
Versiones posteriores necesitarán probablemente otros cambios en los archivos de
configuración, por lo que se recomienda utilizar XAMPP 1.8.3 si se van a seguir estos
apuntes.
Una vez obtenido el archivo de instalación de XAMPP, hay que hacer doble clic sobre
él para ponerlo en marcha. Las imágenes que se muestran a continuación corresponden
a la instalación de XAMPP 1.8.3.1 en Windows 7 (a partir de XAMPP 1.8.3, XAMPP
no se puede instalar en Windows XP ya que PHP 5.5 no se puede instalar en Windows
XP).
Al poner en marcha el instalador XAMPP nos muestra dos avisos:
 El primero aparece si en el ordenador hay instalado un antivirus:
 El segundo aparece si está activado el Control de Cuentas de Usuario y recuerda
que algunos directorios tienen permisos restringidos:
A continuación se inicia el asistente de instalación. Para continuar, hay que hacer clic en
el botón "Next".
Los componentes mínimos que instala XAMPP son el servidor Apache y el lenguaje
PHP, pero XAMPP también instala otros elementos. En la pantalla de selección de
componentes puede elegirse la instalación o no de estos componentes. para este curso se
necesita al menos instalar MySQL y phpMyAdmin.
En la siguiente pantalla se puede elegir la carpeta de instalación de XAMPP. La carpeta
de instalación predeterminada es C:xampp. Si se quiere cambiar, hay que hacer clic en
el icono de carpeta y seleccionar la carpeta donde se quiere instalar XAMPP. Para
continuar la configuración de la instalación, hay que hacer clic en el botón "Next".
La siguiente pantalla nos ofrece información sobre los instaladores de aplicaciones para
XAMPP creados por Bitnami. Para que no se abra la página web de Bitnami, habría que
desmarcar la casilla correspondiente.
Para empezar la instalación de XAMPP, hay que hacer clic en el botón "Next" en la
pantalla siguiente.
A continuación, se inicia el proceso de copia de archivos, que puede durar unos
minutos.
Una vez terminada la copia de archivos, se muestra la pantalla que confirma que
XAMPP ha sido instalado. Hay que hacer clic en el botón "Finish". Para no abrir a
continuación el panel de control de XAMPP hay que desmarcar la casilla
correspondiente.
EL PANEL DE CONTROL DE XAMPP Y EL CORTAFUEGOS DE WINDOWS
El panel de control de XAMPP se divide en tres zonas:
 la zona de módulos, que indica para cada uno de los módulos de XAMPP: si está
instalado como servicio, su nombre, el identificador de proceso, el puerto
utilizado e incluye unos botones para iniciar y detener los procesos,
administrarlos, editar los archivos de configuración y abrir los archivos de
registro de actividad.
 la zona de notificación, en la que XAMPP informa del éxito o fracaso de las
acciones realizadas
 la zona de utilidades, para acceder rápidamente
Para poner en funcionamiento Apache, hay que hacer clic en el botón Start
correspondiente a Apache:
Como Apache abre puertos en el ordenador (por primera vez), el cortafuegos de
Windows pide al usuario confirmación. Para poder utilizarlo hace falta al menos
autorizar el acceso en redes privadas:
Si el arranque de Apache tiene éxito, el panel de control mostrará el nombre del módulo
con fondo verde, su identificador de proceso, los puertos abiertos (http y https), el botón
"Start" se convertirá en el botón "Stop" y en la zona de notificación se verá el resultado
de las operaciones realizadas.
Si se abre el programa "Firewall de Windows con seguridad avanzada", en el apartado
de Reglas de entrada pueden verse las nuevas reglas añadidas.
Para comprobar que todo funciona correctamente, hay que escribir en el navegador la
dirección http://localhost. Al abrir la página por primera vez, XAMPP pedirá
seleccionar el idioma:
Una vez elegido el idioma, se mostrará la página de configuración de XAMPP:
PANEL DE CONTROL DE XAMPP
Al panel de control de XAMPP se puede acceder mediante el menú de inicio "Todos los
programas > XAMPP > XAMPP Control Panel" o, si ya está iniciado, mediante el icono
del área de notificación.
El panel de control de XAMPP se divide en tres zonas:
 la zona de módulos, que indica para cada uno de los módulos de XAMPP: si está
instalado como servicio, su nombre, el identificador de proceso, el puerto
utilizado e incluye unos botones para iniciar y detener los procesos,
administrarlos, editar los archivos de configuración y abrir los archivos de
registro de actividad.
 la zona de notificación, en la que XAMPP informa del éxito o fracaso de las
acciones realizadas
 la zona de utilidades, para acceder rápidamente
Para cerrar el panel de control de XAMPP hay que hacer clic en el botón Quit:
El botón Cerrar en forma de aspa no cierra realmente el panel de control, sólo lo
minimiza:
Si se ha minimizado el panel de control de XAMPP, se puede volver a mostrar haciendo
doble clic en el icono de XAMPP del área de notificación.
Haciendo clic derecho en el icono de XAMPP del área de notificación se muestra un
menú que permite mostrar u ocultar el panel de control, arrancar o detener servidores o
cerrar el panel de control.
EDITAR ARCHIVOS DE CONFIGURACIÓN
Los dos archivos principales de configuración son los archivos httpd.conf (Apache)
y php.ini (PHP). Para editarlos se puede utilizar el panel de control de XAMPP, que
los abre directamente en el bloc de notas. Para ello hay que hacer clic en el botón
"Config" correspondiente a Apache y hacer clic en el archivo que se quiere editar.
INICIAR, DETENER Y REINICIAR SERVIDORES
A veces es necesario detener y reiniciar los servidores. Por ejemplo, los archivos de
configuración de Apache se cargan al iniciar Apache. Si se modifica un archivo de
configuración de Apache (httpd.conf, php.ini u otro) mientras Apache está en marcha,
para recargar los archivos de configuración es necesario detener y reiniciar el servidor
Apache.
Nota: Si al modificar el archivo de configuración hemos introducido errores, el servidor
no será capaz de iniciarse. Si no sabemos encontrar el origen del problema, se
recomienda restaurar los archivos de configuración originales, de los que se aconseja
tener una copia de seguridad.
Para poner en funcionamiento Apache (u otro servidor), hay que hacer clic en el botón
"Start" correspondiente:
Si el arranque de Apache tiene éxito, el panel de control mostrará el nombre del módulo
con fondo verde, su identificador de proceso, los puertos abiertos (http y https), el botón
"Start" se convertirá en un botón "Stop" y en la zona de notificación se verá el resultado
de las operaciones realizadas.
Para detener Apache hay que hacer clic en el botón "Stop" correspondiente a Apache.
Si la parada de Apache tiene éxito, el panel de control mostrará el nombre del módulo
con fondo gris, sin identificador de proceso ni puertos abiertos (http y https), el botón
"Stop" se convertirá en un botón "Start" y en la zona de notificación se verá el resultado
de las operaciones realizadas.
Para reiniciar de nuevo Apache habría que volver a hace clic en el botón "Start"
correspondiente a Apache.
DESCARGAR E INSTALAR NOD PAD++
Cuando la página haya terminado de cargar, hacemos click en la sección download del
menú izquierdo, tal y como se muestra en la siguiente imagen.
En la página web que nos aparecerá, descargamos la versión “Installer” actual, por
ejemplo Notepad++ v6.9.6.2 Installer.
Una vez descargado el archivo, lo ejecutamos para instalarlo en nuestro ordenador
haciendo doble click sobre él. El proceso de instalación es muy simple y entraremos a
explicarlo con más detalle.
Elegimos el lenguaje que queremos en mi caso español y damos click en ok.
Continuamos y damos click en siguiente
Se acepta todos los términos de acuerdo, se selecciona aceptar para continuar. Se debe
aceptar el término de acuerdo para instalar Notepad++.
El programa de instalación se instalara Notepad++ en el siguiente directorio. Para
instalar en un directorio diferente, presione examinar y seleccione otro directorio,
presione siguiente para continuar.
Marque los componentes que desee instalar y desmarque los componentes que no desee
instalar. Presione siguiente para continuar.
Se selecciona las características deseadas de Notepad++ para instalar. Y damos click en
instalar.
Listo tenemos el Nodpad++ instalado en nuestra pc.
Cuando tengamos instalado el programa, ya dispondremos del editor de texto
Notepad++, con el que podremos abrir y editar cualquier fichero HTML. Podremos
acceder al programa desde Inicio -- > Programas -- > Notepad++ o desde el icono de
acceso directo en el escritorio si se ha creado.
HISTORIA Y USO DE APACHE
El servidor HTTP Apache es un servidor web HTTP de código abierto, para
plataformas Unix (BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que
implementa el protocolo HTTP/1.12
y la noción de sitio virtual. Cuando comenzó su
desarrollo en 1995 se basó inicialmente en código del popular NCSA HTTPd 1.3, pero
más tarde fue reescrito por completo. Su nombre se debe a que Behelendorf quería que
tuviese la connotación de algo que es firme y enérgico pero no agresivo, y la tribu
Apache fue la última en rendirse al que pronto se convertiría en gobierno de EEUU, y
en esos momentos la preocupación de su grupo era que llegasen las empresas y
"civilizasen" el paisaje que habían creado los primeros ingenieros de internet. Además
Apache consistía solamente en un conjunto de parches a aplicar al servidor de NCSA.
En inglés, a patchy server (un servidor "parcheado") suena igual que Apache Server.
El servidor Apache se desarrolla dentro del proyecto HTTP Server (httpd) de la Apache
Software Foundation.
Apache presenta entre otras características altamente configurables, bases de datos de
autenticación y negociado de contenido, pero fue criticado por la falta de una interfaz
gráfica que ayude en su configuración.
Apache tiene amplia aceptación en la red: desde 1996, Apache, es el servidor HTTP
más usado. Alcanzó su máxima cuota de mercado en 2005 siendo el servidor empleado
en el 70% de los sitios web en el mundo, sin embargo ha sufrido un descenso en su
cuota de mercado en los últimos años. (Estadísticas históricas y de uso diario
proporcionadas por Netcraft3
).
La mayoría de las vulnerabilidades de la seguridad descubiertas y resueltas tan sólo
pueden ser aprovechadas por usuarios locales y no remotamente. Sin embargo, algunas
se pueden accionar remotamente en ciertas situaciones, o explotar por los usuarios
locales malévolos en las disposiciones de recibimiento compartidas que utilizan PHP
como módulo de Apache.
Apache es usado principalmente para enviar páginas web estáticas y dinámicas en la
World Wide Web. Muchas aplicaciones web están diseñadas asumiendo como ambiente
de implantación a Apache, o que utilizarán características propias de este servidor web.
Apache es el componente de servidor web en la popular plataforma de aplicaciones
LAMP, junto a MySQL y los lenguajes de programación PHP/Perl/Python (y ahora
también Ruby).
Este servidor web es redistribuido como parte de varios paquetes propietarios de
software, incluyendo la base de datos Oracle y el IBM WebSphere application server.
Mac OS X integra apache como parte de su propio servidor web y como soporte de su
servidor de aplicaciones WebObjects. Es soportado de alguna manera por Borland en
las herramientas de desarrollo Kylix y Delphi. Apache es incluido con Novell NetWare
6.5, donde es el servidor web por defecto, y en muchas distribuciones Linux.
Apache es usado para muchas otras tareas donde el contenido necesita ser puesto a
disposición en una forma segura y confiable. Un ejemplo es al momento de compartir
archivos desde una computadora personal hacia Internet. Un usuario que tiene Apache
instalado en su escritorio puede colocar arbitrariamente archivos en la raíz de
documentos de Apache, desde donde pueden ser compartidos.
Los programadores de aplicaciones web a veces utilizan una versión local de Apache
con el fin de previsualizar y probar código mientras éste es desarrollado.
Microsoft Internet Information Services (IIS) es el principal competidor de Apache, así
como Sun Java System Web Server de Sun Microsystems y un anfitrión de otras
aplicaciones como Zeus Web Server. Algunos de los más grandes sitios web del mundo
están ejecutándose sobre Apache. La capa frontal (front end) del motor de búsqueda
Google está basado en una versión modificada de Apache, denominada Google Web
Server (GWS).
Luis calero
CONCEPTO DE VARIABLES
Una variable de un lenguaje de programación es un elemento que permite almacenar
información. En los lenguajes de programación las variables se identifican por su
nombre. En PHP el programador puede dar el nombre que quiera a las variables, con
algunas restricciones:
• Los nombres de las variables tienen que empezar por el carácter $.
• A continuación tiene que haber 1 letra (mayúscula o minúscula) o un guión bajo
(_).
• El resto de caracteres del nombre pueden ser números, letras o guiones bajos.
Los nombres de variables pueden contener caracteres no ingleses (vocales acentuadas,
eñes (ñ) o cedillas (ç), etc.) pero la costumbre es no utilizarlas.
Una variable podría definirse como una posición de memoria creada para introducir o
asignar cualquier valor o dato. Durante la ejecución del script el valor de la variable
puede "variar"(valga la redundancia) tanto de tipo como de valor. En PHP (al igual que
en JavaScript) no hace falta declarar la variable ya que simplemente anteponiendo el
carácter $ al nombre de la variable estamos indicando que es una variable.
En los nombres de las variables, PHP distingue entre mayúsculas y minúsculas, es decir,
si se cambia algún carácter de mayúscula a minúscula o viceversa, para PHP se tratará
de variables distintas.
Para facilitar la comprensión del programa, se aconseja que los nombres de las variables
hagan referencia a la información que contienen. Por ejemplo, si se va a guardar en una
variable la edad del usuario, un nombre adecuado de la variable sería por ejemplo
$edad.
Si el nombre de la variable contiene varias palabras, se aconseja utilizar la notación
"camel case", es decir, escribir la primera palabra en minúsculas y la primera letra de las
siguientes palabras en mayúsculas. Por ejemplo, si se van a guardar en varias variables
las edades del usuario y la de sus padres y abuelos, unos nombres adecuados podrían ser
$edadUsuario, $edadPadre, $edadMadre, $edadAbueloPaterno, etc.
USAR VARIABLES
Las variables en PHP son representadas con un signo de dólar ($) seguido por el nombre
de la variable. El nombre de la variable es sensible a minúsculas y mayúsculas. Es decir,
las siguientes declaraciones de variables son distintas entre ellas:
$variable, $Variable, $variable, $variable, etc. representan a distintas
variables. Recordar que una variable es un espacio de la memoria del ordenador (en este
caso del servidor) a la que asignamos un contenido que a grandes rasgos puede ser un
valor numérico (sólo números, con su valor de cálculo) o alfanumérico (sólo texto o
texto con números). Para declarar un nombre de variable válido, éste tiene que empezar
con una letra (o si no empieza con una letra, tendrá que hacerlo con un carácter de
subrayado), seguido de cualquier número de letras, números y caracteres de subrayado
Posible nombre de variable Validez
$4variable Nombre de variable inválido.
$_4variable Nombre de variable válido.
$variable4 Nombre de variable válido.
$otra Nombre de variable válido.
$1_otra Nombre de variable inválido.
$variable_de_nombre_muy_largo Nombre de variable válido.
$ A B C Nombre de variable inválido.
$A_y_B_x_C Nombre de variable válido.
Cuando el intérprete PHP detecta un error en la sintaxis al declarar una variable,
cuando tratamos de acceder a la página php nos aparecerá un mensaje de error. Por
ejemplo si en un archivo php incluimos una línea como $ A B C = 5; donde el nombre
de variable es inválido ya que tiene espacios intermedios, nos aparecerá un mensaje de
error:
Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE or '$' in
/home/miraiz/domains/midominio.com/public_html/prueba.php on line 3. Este mensaje
nos informa de que hay un problema en el archivo php y nos indica la línea donde el
intérprete considera que está el problema. A continuación vamos a citar ejemplos de
variables:
IMPRIMIR HOLA MUNDO
PRESENTACION EN PANTALLA
IMPRIMIR EN PANTALLA UN NOMBRE
PRESENTACION EN PANTALLA
IMPRIMIR EN PANTALLA MI PRIMER PROGRAMA EN PHP
PRESENTACION EN PANTALLA
OPERADORES DE ASIGNACIÓN Y DE IGUALDAD
ASIGNACIÓN (=)
El operador de asignación es "=". Se podría pensar que es como un "igual a". No lo es.
El operador igual en programación no tiene el mismo sentido que en matemáticas. En
programación, significa que el valor de la expresión de la derecha se establece en el
operando de la izquierda.
EJEMPLO:
PRESENTACION EN PANTALLA
IGUALDAD (==)
El comparador de igualdad es ==. Como su propio nombre indica, sirve para comparar
dos valores o variables y no para asignar valores. Este operador devuelve el resultado de
la operación lógica de 'igual a' tal y como podemos apreciar en el siguiente ejemplo.
PRESENTACION EN PANTALLA
TIPOS DE DATOS
En PHP no es necesario indicar el tipo de datos al que pertenece una variable, sino que
son asumidos directamente por el intérprete PHP, que es el encargado de interpretar el
código. Ahora veremos en una tabla los distintos tipos de datos que se pueden usar en
PHP.
TIPO DE
DATO
DEFINICIÓN
integer
Los integers, o enteros, pueden tener distintos valores numéricos
enteros que se expresan con diferentes notaciones.
$variable = 18; // Número entero positivo
$variable = -18; // Número entero negativo
$variable = 0x12; // Notación hexadecimal, es igual a 18 decimales
float o double
Este tipo de datos son los números de punto flotante a los que
normalmente llamamos “números decimales”, por ejemplo, 9.876. La
sintaxis para utilizarlos es bastante simple:
$variable = 9.876;
string
El tipo de datos string, también conocido como cadena de caracteres,
se expresa con la siguiente sintaxis:
$variable = "Yo soy una cadena";
boolean
Se trata de un tipo lógico. Sus posibles valores son TRUE o FALSE.
$variable = true;
$variable = false;
INSTRUCCIÓN ECHO
Esta instrucción PHP hace que se muestre por pantalla un texto, una variable, o una
combinación de texto y variables. Crea un archivo php con el siguiente código, ponle un
nombre como usoDeEcho.php y súbelo al servidor. Luego invócalo usando una ruta
como http://localhost/ejercicios/usoDeEcho.php.
La visualización en tu navegador deberá ser similar a esta. Puede variar ligeramente
dependiendo del navegador que uses.
Ten en cuenta que $a se muestra por pantalla como 5 porque el intérprete de PHP
considera que debe mostrarse siempre el valor de la variable, incluso si va dentro de un
texto. Prueba a escribir la siguiente línea: echo " El valor de la variable $a es $a.";
Comprobarás que se muestra por pantalla “salida por pantalla. 5 El valor de la variable
$a es 5.” Cuando antecedemos un nombre de variable del carácter  hacemos que se
interprete como texto en lugar de como una variable. El carácter  se suele llamar
“carácter de escape”.
CONCATENACIÓN DE CADENAS DE CARACTERES
Las cadenas, como ya sabemos, son un tipo de dato; concretamente una sucesión de
caracteres; y que pueden ser número, letras o símbolos.
En PHP toda cadena debe ir entre comillas; pudiendo ser comillas simples o comillas
dobles según la necesidad lo requiera.
En esta lección vamos a conocer las cadenas con un poco más de profundidad. Veremos
como operar con ellas de forma básica; y como trabajar con ellas junto con las variables.
El resultado que mostrará el navegador será el número es 8; ya que 8 es el valor de la
variable que hemos escrito dentro de la cadena. Ahora, si sustituyes las dobles comillas
por comillas simples, el resutlado cambia ael número es $número. Cuando
escribimos cadenas con comillas simples PHP interpreta que queremos escribir de
forma literal, por eso no muestra el valor de la variable.
PRESENTACION EN PANTALLA
LA CONCATENACIÓN
Esta técnica sirve para unir dos o más datos; por ejemplo dos cadenas, o una cadena y
una variable. Para concatenar tenemos que hacer uso de un operador, este operador se
escribe poniendo un punto. Veamos un ejemplo donde concatenamos dos cadenas a
través de variables:
l resultado que debe aparecer en el navegador es: esto es una cadena y es otra cadena.
Como vez en la sentencia echo, hemos juntado las dos cadenas a través del punto, que
es el operador de la concatenación.
También hay que darse cuenta que se ha dejado una espacio al principio de la segunda
cadena para que, al aparecer las dos concatenadas, se respeten todos los espacios entre
palabras.
EJEMPLOS
PRESENTACIÓN EN PANTALLA
CONCATENAR NOMBRE Y FECHA
PRESENTACIÓN EN PANTALLA
OPERACIONES ARITMETICAS EN PHP
Suma, Resta, Multiplicación, División.
1. Suma
PRESENTACION EN PANTALLA
RESTA
PRESENTACION EN PANTALLA
MULTIPLICACIÓN
PRESENTACION EN PANTALLA
DIVICION
PRESENTACION EN PANTALLA
Luis calero
CONCEPTO ESTRUCTURAS SELECTIVAS
Las estructuras, tanto en PHP como en otros lenguajes de programación, permiten
realizar acciones en el programa en las que intervienen una o varias sentencias.
Una estructura es un bloque del programa que debe comportarse de una determinada
manera, la cual también definimos. La mayoría de las estructuras tienen la siguiente
forma:
Nombre (forma de comportarse) {sentencias a las que afecta }
Nombre es el nombre que tiene el tipo de estructura y es siempre una palabra clave; en
forma de comportarse introduciremos los datos necesarios para que la estructura
funcione, siempre entre paréntesis; y en sentencias a las que afecta introduciremos las
sentencias a las que afecta esta estructura, las cuales se escriben entre corchetes.
ESTRUCTURA CONDICIONAL "IF"
En una estructura condicional en "(forma de comportarse)" se indica una condición. si
ésta se cumple el programa ejecutará las sentencias incluidas entre corchetes, si no es
así puede que no haga nada o que ejecute otra acción distinta, dependiendo de lo que se
le indique.
La estructura condicional más sencilla es la estructura if. Esta es la misma que en el
lenguaje Javascript, y tiene la siguiente forma:
En ("condición") pondremos una sentencia en la que comprobamos mediante un
operador condicional si se cumple o no una cierta condición.
Como podemos ver aquí, los operadores condicionales son imprescindibles para definir
la condición, podemos usar también operadores lógicos, asociados con los
condicionales:
El siguiente paso es definir la sentencia o sentencias a que se ejecutarán en el caso de
que la condición se cumpla:
Podemos dejar la estructura así si queremos que el programa no haga nada cuando la
condición no se cumple. Pero si queremos que cuando la condición no se cumple se
ejecute un código distinto, añadiremos la palabra else seguida del código entre
corchetes:
Veamos todo el código anterior ordenado:
PRESENTACION EN PANTALLA
Fíjate en cómo hemos puesto los tabuladores, y los espacios, aunque en realidad
podemos ponerlos con cualquier otra distribución, ésta es la que más se suele usar, ya
que permite una mayor claridad para ver el código, y para poder añadir posteriormente
más sentencias dentro de cada corchete.
Es recomendable seguir unos buenos hábitos desde el principio y acostumbrarnos a
escribir el código de las estructuras de esta manera.
La sentencia if, es condicional y valida que se cumpla cierto criterio o condición.
Este ejemplo imprime en el navegador un texto si se cumple con la condición.
PRESENTACION EN PANTALLA
SENTENCIA CONDICIONAL – ELSE
La sentencia else, es condicional y se usa cuando no se cumple la sentencia if o la
sentencia else if. La sentencia condicional "else" se utiliza como extensión de la
sentencia "if". Si la condición falla, entonces se ejecuta otra sentencia bajo la condición
"else".
Este ejemplo imprime en el navegador un texto si se cumple con la condición y si no
imprime otro texto.
PRESENTACION EN PANTALLA
SENTENCIA ELSE-IF
La sentencia else-if, es condicional y se coloca después de la sentencia If, ya que si no
se cumple el if se ejecuta esta.
La sentencia else/ if se utiliza como extensión de la estructura "If", si la condición
falla, entonces se ejecuta otra condición "If" para ejecutar el segmento de código en la
sentencia"elseif".
Este ejemplo imprime en el navegador un texto si se cumple con la condición y si
no evalúa otra condición e imprime un texto.
PRESENTACION EN PANTALLA
SENTENCIAS REPETITIVAS
Concepto de bucle.- Un bucle es una estructura que hace que un código determinado
pueda repetirse un cierto número de veces.
Puede haber algunas variables que cambien de valor en cada repetición, con lo que en
cada vuelta del bucle obtendremos un resultado distinto, aunque parecido al anterior.
Definir el número de veces que se repite el bucle depende de cada tipo de estructura,
aunque lo normal es que haya una variable que cambia con cada repetición. Hay
también una condición que debe cumplirse para que el bucle se repita. Por tanto
haremos que la condición dependa del valor de la variable, de manera que cuando la
variable no tenga el valor indicado, el bucle deja de ejecutarse.
SENTENCIA FOR
La sentencia for es una sentencia repetitiva, es decir se va a ejecutar las veces que se
especifiquen, formando un bucle.
Este ciclo es uno de los más usados para repetir una secuencia de instrucciones, sobre
todo cuando se conoce la cantidad exacta de veces que se quiere que se ejecute una
instrucción simple o compuesta. Su formato general es:
for (inicialización; condición; incremento){ instrucción(es); };
Ejemplo: Este ejercicio imprime en el navegador del número 1 al 10.
PRESENTACIÓN EN PANTALLA.
SENTENCIA WHILE
La sentencia while es una sentencia repetitiva, es decir se va a ejecutar las veces que se
especifiquen, formando un bucle, así mismo se le da una condición, es decir ejecuta
código mientras se cumpla cierta condición.El bucle while es el más sencillo, su sintaxis
es la siguiente.
Mientras se cumpla la condición el bucle repetirá las sentencias indicadas entre llaves.
Lo normal es que dentro de las sentencias a ejecutar haya una variable que controla el
bucle, es decir que hace que el bucle se repita. Esta variable debe cambiar en cada
repetición, de manera que llegue un momento en que la condición no se cumpla, y
podamos salir del bucle.
Ejemplo: Este ejercicio imprime en el navegador del número 1 al 10.
PRESENTACIÓN EN PANTALLA.
SENTENCIA DO-WHILE:
La sentencia do-while es una sentencia repetitiva, es decir se va a ejecutar las veces que
se especifiquen, formando un bucle, así mismo se le da una condición, es decir
ejecuta código y luego evalúa la condición.
Como una variante del bucle while está el bucle do while. La diferencia con el
bucle while es que aquí las sentencias del bucle se ejecutarán siempre al menos una vez,
aunque no se cumpla la condición. Este bucle tiene la siguiente sintaxis:
Abrimos el bucle con la palabra clave do para poner a continuación las sentencias entre
corchetes, después ponemos la palabra clave while con la condición entre paréntesis. Lo
de poner la condición al final del bucle es lo que hace posible que éste se pueda ejecutar
siempre al menos una vez.
Veamos un ejemplo:
Este ejercicio imprime en el navegador del número 1 al 10.
PRESENTACIÓN EN PANTALLA.
Luis calero
COMPONENTES HTML
USO Y FUNCIONAMIENTO DEL FORM HTML
Un formulario HTML es una sección de un documento que contiene contenido normal,
código, elementos especiales llamados controles (casillas de verificación (checkboxes),
radiobotones (radio buttons), menúes, etc.), y rótulos (labels) en esos controles. Los
usuarios normalmente "completan" un formulario modificando sus controles
(introduciendo texto, seleccionando objetos de un menú, etc.), antes de enviar el
formulario a un agente para que lo procese (p.ej., a un servidor web, a un servidor de
correo, etc.)
Aquí se muestra un ejemplo de un formulario simple que incluye rótulos, radiobotones
y botones para reinicializar el formulario o para enviarlo:
EJEMPLO
PRESENTACION EN PANTALLA
Excepto las partes de htmlspecialchars() y de (int), debería ser obvio qué es lo que hace
el código. htmlspecialchars() se asegura de que cualquier carácter que es especial en
html sea codificado adecuadamente, de manera que nadie pueda inyectar etiquetas
HTML o Javascript en la página. El campo edad, ya que sabemos que es un número,
podemos convertirloa un valor de tipo integer que automáticamente se deshará de
cualquier carácter no numérico. También se puede hacer lo mismo con PHP con la
extensión filter. Las variables $_POST['nombre'] y $_POST['edad'] son establecidas
automáticamente por PHP. Anteriormente hemos usado la superglobal $_SERVER;
arriba introdujimos la superglobal$_POST, la cual contiene todos los datos de POST.
Observe que el método de nuestro formulario es POST. Si hubiésemos usado el
método GET, nuestra información estaría en su lugar en la superglobal $_GET.
También se podría usar la superglobal $_REQUEST, si no le preocupa la fuente de los
datos solicitados. Contiene toda la información mezclada de los datos de GET, POST y
COOKIE.
En PHP, también puede tratar con entradas de XForms; aunque probablemente al
principio se sienta cómodo con los formularios de HTML, los cuales están ampliamente
respaldados. A pesar de que trabajar con XForms no es para principiantes, podrían
interesarle. Si es así, en la sección de características hay una pequeña introducción a la
manipulación de datos recibidos desde XForms.
Los formularios son objetos; tienen sus propios métodos propiedades y manejadores de
eventos. Uno de los manejadores de eventos que debería conocer es onSubmit.
OnSubmit obtiene todo lo llamado en dos situaciones: si un usuario presiona sobre el
botón de submit, o si un usuario presione <return> dentro de un campo de texto. Si estas
acciones no son administradas en algún modo, su JavaScript puede comportarse
diferente de lo esperado. En la Parte A del ejemplo28_0.html, presione el botón Enviar
o si presiona<return> sobre un campo de texto.
USO Y FUNCIONAMIENTO DEL TEXT HTML
HTML nos permite definir el formato de visualización del texto en la pantalla. Muy útil para
cuando queramos resaltar o enfatizar un texto en especial. También muy usado para subrayar
o escribir subíndices o superíndices. Estos, son solo algunos ejemplos de lo que podemos hacer
con estos elementos.
ETIQUETAS PARA DAR FORMA AL TEXTO
Etiquetas Descripción
<b> Define un texto en negrita
<big> Define un texto grande
<em> Define un texto enfatizado
<i> Define un texto en itálica
<small> Define un texto pequeño
<strong> Define un texto fuerte
<sub> Define un texto subíndice
<sup> Define un texto superíndice
<ins> Define un texto subrayado
<del> Define un texto tachado
<tt> Define un texto de teletipo
<s> Define un texto tachado. Desaprobado. Use <del> en su lugar
<strike> Define un texto tachado. Desaprobado. Use <del> en su lugar
<u> Define un texto subrayado. Desaprobado. Use <ins> en su lugar
ETIQUETAS DE "TEXTO ESTRUCTURADO"
Estas etiquetas son usadas comúnmente para mostrar códigos de programación.
Etiquetas Descripción
<code> Define un texto en código de computadora
<kbd> Define un texto del teclado
<samp> Define un texto ejemplo de código de computadora
<var> Define una variable
<pre> Define un texto preformateado
<listing> Desaprobado. Use <pre> en su lugar
<plaintext> Desaprobado. Use <pre> en su lugar
<xmp> Desaprobado. Use <pre> en su lugar
ETIQUETAS DE CITACIONES Y DEFINICIONES
Etiquetas Descripción
<abbr> Indica una forma abreviada (p.ej., WWW, HTTP, etc.)
<acronym> Indica un acrónimo (p.ej., WAC ,radar, autobús, etc.)
<address> Define la información sobre el autor
<bdo> Define la dirección del texto (p.ej., de izq. a der., de der. a izq.)
<blockquote> Designa una cita larga
<q> Designa una cita corta
<cite> Contiene una cita o una referencia a otras fuentes
<dfn> Indica que aquí es donde se define el término encerrado
USO Y FUNCIONAMIENTO DEL CHECKBOX.
Los "checkboxes" nos permiten seleccionar varias opciones marcando el cuadrito que
aparece a su izquierda. El cuadrito pulsado equivale a un "sí" y sin pulsar a un "no" o, lo
que es lo mismo, a "true" o "false".
Propiedades
checked. Valor booleano que nos dice si el checkbox está pulsado o no
defaultChecked. Valor booleano que nos dice si el checkbox debe estar seleccionado
por defecto o no
name. Es una cadena que contiene el valor del parámetro NAME.
value. Es una cadena que contiene el valor del parámetro VALUE.
type. Especifica el tipo en este caso checkbox.
disabled. Permite deshabilitar cada uno de los checkbox.
Métodos
click(). Realiza la acción de pulsado del botón
blur(). Pierde el foco del ratón sobre el objeto especificado.
focus(). Obtiene el foco del ratón sobre el objeto especificado.
input: para agregar un campo al formulario
type=”checkbox”: para especificar que es una casilla de verificación
name=”tema[]“: es importante que todas las alternativas tengan el mismo nombre, para
luego poder recibir los valores del checkbox en el script php y saber cuáles fueron las
opciones tildadas por el usuario. En este caso el nombre es “tema”, los corchetes que
aparecen luego son necesarios.
EJEMPLOS
RECIBIR EN PHP
PRESENTACION EN PANTALLA
RESULATADO
USO Y FUNCIONAMIENTO DEL RADIO BUTTON.
Afortunadamente, radio buttons son similares a los checkbox . La única diferencia real
está en el HTML. Checkboxes son dispositivos on/off. Si un checkbox está tildado, lo
puede desmarcar o viceversa. Radio buttons son diferente. Una vez que un radio
button está encendido (on), permanecerá en ese estado hasta que otro sea seleccionado.
En ese momento el primero entra en off.
EJEMPLO
RADIO BUTTON
RECIBIR EN PHP
PRESENTACION EN PANTALLA
RESULTADO
EJEMPLO2
FORMULARIO
RECIBIR EN PHP
PRESENTACIOPN EN PANTALLA
RESULTADO
USO Y FUNCIONAMIENTO DEL SELECT.
Los Selects son los elementos más extraños dentro de los formularios. Existen dos
clases primarias, menús y listas.
FORMULARIO
RECIBIR EN PHP
PRESENTACION EN PANTALLA
RESULTADO
Esto funciona debido a que los elementos select tienen las propiedades de las opciones
en un arreglo. Puede buscar una de las opciones en el arreglo y modificar su propiedad.
Trate de hacer esto y luego busque en el menú para ver que realmente haya cambiado.
Cuando se elige una opción en el select, la propiedad selectedIndex será el valor del
arreglo de la opción seleccionada. Para verificar esto elija una de las opciones de la
lista. Recuerde que las opciones comienzan desde el valor cero.
Como cualquier otro elemento, el elemento select tiene un manejador: onChange(). Éste
es llamado cada vez que se produce un cambio en el select.
Establecer el foco a un determinado elemento
Es cómodo cuando uno ingresa a una página, que el primero elemento quede en foco,
sin la necesidad de tener que ponerlo en foco por medio del mouse. Como ocurre
cuando uno ingresa a Google, el texto automáticamente queda en foco.
USO Y FUNCIONAMIENTO DEL IMG.
El uso de imágenes es uno de los factores que ha popularizado tanto World Wide Web.
Incluir imágenes en una presentación web es muy sencillo, solo debe de tener en cuenta
que las imágenes tienen que tener los formatos GIF, JPEG o PNG. Las imágenes en
línea, se especifican a partir de la tag <img>que no tiene una tag correspondiente de
cierre pero que puede acompañarse de los siguientes atributos:
src= Este atributo es obligatorio e indica el nombre del archivo de imagen (entre
comillas) o la URL que se va a representar.
Align= Permite controlar la alineación de una imagen con respecto a una línea de texto
adyacente o a otras imágenes en esa línea. Los tres valores posibles son los ya
conocidos left, right, top, middle ybottom.
Alt = Es la alternativa que se estableció cuando todavía existían visualizadores de solo
texto. Entre comillas podremos escribir un texto que suplantara a esta imagen si no se
carga o mientras se carga o cuando, visualizando ya la imagen, pasamos el ratón por
encima.
WIDTH= Este atributo es opcional pero es recomendable ponerlo para ayudar al
navegador a representar la imagen, significa el ancho de la imagen que vamos a
representar.
HEIGHT=Al igual que el atributo WIDTH, es opcional y recomendable ponerlo, este
significa el alto de la imagen.
BORDER= Con BORDER especificamos el ancho de un borde que rodea la imagen.
EJEMPLO
FORMULARIO
PRESENTACION EN PANTALLA
EJEMPLO
PRESENTACION EN PANTALLA
El "texto alternativo" se denomina así porque supone una verdadera alternativa al
gráfico. Hay que tener en cuenta la posibilidad de que el navegador que visite nuestra
página tenga desactivada la opción de "ver imágenes" (¡o incluso un error en el enlace
por nuestra parte!), en cuyo caso sólo aparecería dicho texto. En condiciones
"normales", el texto alternativo posee la función de un pie de foto, puesto que aparece al
posar el cursor sobre la imagen.
El tamaño de la imagen puede modificarse, efectivamente, con <IMG width="¿?"
height="¿?">, Pero hay que tener en cuenta que los valores que señalemos aquí no
alteren las proporciones de la imagen original. En cualquier caso, como norma general,
es mejor efectuar todos los ajustes necesarios en un programa de edición gráfica (Paint
Shop Pro, Photoshop, etc.).
Los ajustes de <IMG align> pueden referise a la línea de texto o al párrafo:
Una imagen pequeña (como un icono) puede presentarse dentro de una línea de texto.
En este caso, puede alinearse justo sobre la línea del texto (<IMG align="top">), debajo
(<IMG align="bottom">) o en el medio (<IMG align="middle">).
Una imagen puede colocarse dentro de un párrafo, de modo que el texto se presente a la
izquierda (<IMG align="right">) o a la derecha (<IMG align="left">) de la imagen.
USO Y FUNCIONAMIENTO DEL TEXTAREA.
El elemento HTML textarea inserta un control de entrada de texto multilínea en un
documento o formulario. A diferencia del elemento HTML input, con el atributo "type"
establecido a "text", este control puede aceptar más de una línea de texto como entrada.
Esta característica especial, hace de este elemento una buena elección a la hora de
requerir comentarios o mensajes.
Este elemento está destinado a recolectar información provista por el usuario. Una vez
llenado, el contenido de este control puede ser enviado por el mismo y luego recibido
por el agente procesador, quien manejará la información como sea requerido.
Nota que el contenido de este control representa el valor inicial del control.
EJEMPLOS
CÓDIGO
VISTA
MENSAJE:
LUIS CALEROROMERO
PORTAFOLIODEOPTATIVA
ING. HECTORMENAJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
ATRIBUTOS
id (name).- El atributo "id" asigna un identificador al elemento asociado. Este
identificador debe ser único en todo el documento y puede ser usado para referirse a
este elemento en otras instancias (por ejemplo, desde un script del lado cliente).
STYLE (STYLE)
Este atributo es utilizado para definir atributos presentacionales para el elemento
contenedor, y su valor debería estar compuesto por propiedades de hojas de estilo.
Aunque en algunos casos es particularmente útil, es una mejor práctica poner los
atributos presentacionales en archivos externos, relacionándolos a los elementos a través
del atributo "class". De este modos, se mejora la separación de las partes semántica y
presentacional de tu documento.
Al escribir documentos XHTML 1.0, el atributo usado para especificar el lenguaje de un
elemento es "xml:lang". Para compatibilidad con los dos tipos de estándar ambos
atributos pueden ser usados simultáneamente como en el ejemplo a continuación. Nota
que en XHTML 1.1, el atributo "lang" ha sido completamente reemplazado por
"xml:lang" y su uso ya no es válido.
PRESENTACION EN PANTALLA
Este atributo indica la dirección en que el texto del elemento debe ser leído. Esto
incluye al contenido, los valores de los atributos y las tablas. Tiene dos valores posibles
que son insensibles a mayúsculas/minúsculas:
Cuando este atributo booleano está presente, los usuarios están imposibilitados para
cambiar el control del contenido. Sin embargo, los controles "readonly" pueden recibir
el enfoque y son enviados con el formulario.
Recuerda que en HTML, los atributos booleanos debe tomar su propio nombre como
valor (por ejemplo, nombreatributo="nombreatributo").
CÓDIGO
Los comentarios no pueden ser editados en esta etapa!</textarea>
VISTA
Como con el atributo "readonly", los usuarios no podrán cambiar el contenido del
control cuando este atributo esté presente. Además, el control no podrá recibir el
enfoque y su información no será enviada con el formulario.
Los navegadores habitualmente muestran los controles visuales de manera diferente,
como si fueran semitransparentes, con una combinación de colores grises.
Recuerda que en HTML, los atributos booleanos debe tomar su propio nombre como
valor (por ejemplo, nombreatributo="nombreatributo").
CÓDIGO
Los comentarios no pueden ser editados en esta etapa!</textarea>
VISTA
LUIS CALERO
ROMERO
TABINDEX (NUMBER)
Especifica la posición de este elemento en el orden de tabulación. El orden de
tabulación define una secuencia con todos los elementos que pueden recibir el enfoque.
Los usuarios pueden navegar esta secuencia mediante el teclado (usualmente con la
tecla "tab").
PRESENTACION EN PANTALLA
ACCESSKEY (CHARACTER)
Relaciona al elemento con una tecla. La mayoría de los navegadores permite acceder al
elemento presionando dicha tecla mientras se mantiene presionada la tecla "alt". El
resultado de la activacióndepende de la naturaleza del elemento. Para vínculos, esta
acción automáticamente sigue el vínculo, mientras que otros elementos simplemente
reciben el enfoque.
PRESENTACION EN PANTALLA
USO Y FUNCIONAMIENTO DEL CAMPO OCULTO.
Los campos ocultos son un tipo de control que únicamente sirve para incluir
información adicional entre los datos del formulario. Este tipo de control es invisible, y
por tanto el navegador no muestra ningún tipo de gráfico para advertir de su existencia.
¿Para qué sirve entonces un control oculto?. Si no aparece en la página y el navegante
no puede hacer nada con él ¿Cuál es su función?. En general, los campos ocultos se
usan para enviar información específica al programa del servidor Web que procesará los
datos enviados, por ejemplo si este programa es capaz de realizar varias funciones
distintas con estos datos, podemos usar un campo oculto para pasarle la información de
que debe hacer con los datos de este formulario concreto (debemos tener en cuenta que
este mismo programa puede procesar la información de otros formularios también). Aun
así esta problemática queda fuera de lo que pretendemos abarcar en esta sección
dedicada al lenguaje HTML.
Los campos ocultos se crean usando la etiqueta INPUT con TYPE="hidden". Además
debemos usar los atributos VALUE y NAME, para indicar los datos y su nombre:
EJEMPLO:
RECIBIR ARCHIVO. PHP
PRESENTACION EN PANTALLA
USO Y FUNCIONAMIENTO DEL PASSWORD.
Este control actúa exactamente como el de entrada de línea con la excepción de que
"esconde" los caracteres ingresados mostrándolos como puntos o asteriscos para evitar
que los usuarios ven su contenido.
Es definido utilizando el valor "pass" en el atributo "type", y su valor inicial puede ser
definido usando el atributo "value". Es comúnmente usado para el ingreso de
contraseñas.
VISTA EN PANTALLA
El valor pasado al agente procesador será el texto ingresado por el usuario, es decir, el
contenido de la caja de texto.
USO Y FUNCIONAMIENTO DE TABLAS.
Las tablas se usan con profusión en las páginas Web, muchas veces debido a que son el
único instrumento con el que se cuenta, para asegurarse que las cosas estarán en su sitio.
Para definir una tabla se usan las etiquetas:
La tabla se va definiendo declarando una fila y a continuación las celdas que contiene
esa fila, luego otra fila y sus celadas, etc. No es necesario que todas las filas contengan
el mismo número de celdas.
La tabla (2x2) más sencilla que podemos hacer es la siguiente
PRESENTACION EN PANTALLA
El resultado no es muy brillante, pero vamos a ir viendo las distintas posibilidades que
tenemos para mejorarlo.
Atributos de la etiqueta TABLE
Todos los atributos son opcionales
BORDER="4". Indica el tamaño del borde en píxels, en este caso 4. Si no se indica
nada carece de borde
WIDTH="5" o WIDTH="50%". Es el ancho de la tabla, puede especificarse en valor
absoluto (5 píxeles) o como un porcentaje (50% del ancho disponible)
CELLSPACING="2". Es el espacio entre las celdas, por defecto es 2
CELLPADDING="5". Es el espacio entre el contenido de las celdas y el borde de las
mismas, por defecto es 1
ALIGN=" left", "right", "center". Alinea la tabla a la izquierda , derecha o en el centro.
EJEMPLO
PRESENTACIÓN DE TABLA
Atributos de las etiquetas de fila y celda
Las etiquetas que soportan las filas y las celdas son.
WIDTH="30". Ancho de toda la fila o celda. También se puede dar en %
ALIGN=" left", "right", "center". Alinea el contenido a la izquierda, derecha o centro
VALIGN="top" , "middle" o "bottom". Alinea el contenido verticalmente arriba, en
medio o abajo
BGCOLOR="#AACCEE". Pone un fondo del color especificado a la celda o fila
COLSPAN=3. Especifica el número de columnas que abarca la fila
ROWSPAN=2. Especifica el número de filas que abarca la columna
EJEMPLO.
PRESENTACION DE TABLA EN PANTALLA
Luis calero
VECTORES
ARRAYS BÁSICOS O TRADICIONALES EN PHP
Un array es un conjunto de variables de una misma clase. Se accede a cada elemento
individual del array mediante un número entero denominado índice. 0 es el índice o
localizador del primer elemento y n-1 es el índice del último elemento, siendo n, la
dimensión del array. Así $empleado [23] representaría al empleado con localizador 23
como veremos a continuación.
Los arrays son muy utilizados en la programación. Dependiendo de la cantidad de
dimensiones que tengan pueden ser:
 De una dimensión (vectores). Por ejemplo $empleado[23]
 De dos dimensiones (matrices). Por ejemplo $butaca[3, 14]
 De tres o más dimensiones (multidimensionales). Por ejemplo $fecha[2012, 9,
22]
Para acceder a los elementos del array se utilizan los corchetes [], dentro de los cuales
existirá un localizador o índice que es un número entero. Además, podemos guardar
valores de cualquier tipo de variable (string, entero, punto flotante, booleano) dentro de
un array. Por ejemplo $empleado [23] podría tomar como valor $empleado [23] = “Juan
Pérez Suárez”. En este caso se trataría de un array de cadenas de texto, es decir, un array
de string. En otro caso $empleado [23] podría tomar como valor $empleado [23] =
2312. En este caso se trataría de un array de valores numéricos.
En algunos lenguajes es necesario declarar los arrays antes de poder utilizarlos, pero en
PHP no es necesario. Cuando se definen elementos de un array, PHP reconoce
automáticamente que se trata de un array sin necesidad de declaración previa.
Se define a un arreglo como un grupo de elementos relacionados entre sí por medio de
índices. Los arreglos pueden ser de una o más dimensiones, los de una dimensión, son
llamados comúnmente "vectores".
VECTORES (ARRAYS DE UNA DIMENSIÓN)
Los vectores son los arrays que sólo contienen una dimensión. Escribe ahora este código
y guárdalo con un nombre de archivo como ejemplo1.php. A continuación, sube el
fichero al servidor y visualiza el resultado.
EJEMPLOS
PRESENTACION EN PANTALLA
La forma general de uso de un array es: $nombreDeVariableArray [localizador] =
valorAsignado; Ten en cuenta que lo que diferencia a una variable que pertenece a un
array (conjunto de variables) es la presencia del corchete con un índice en su interior.
PHP admite también otra posibilidad que no admiten otros lenguajes: se pueden usar
arrays sin especificar los números de los índices, ya que PHP los puede colocar
automáticamente.
PRESENTACION EN PANTALLA
Fíjate que PHP ha colocado automáticamente los índices, asignando el 0 a Sevilla, el 1 a
Madrid, el 2 a Barcelona y el 3 a Valencia. Hay que recordar que los arrays siempre
comienzan numerándose desde cero.
Otra forma de asignar valores a un array vector es la siguiente:
PRESENTACION EN PANTALLA
Como ves, esta es una forma abreviada cuya forma general es:
$nombreDelArray = array (valorElemento0, valorElemento1, valorElemento2,…,
valorElemento3)
El término array es una palabra clave en PHP cuyo significado es equivalente a decir
“los elementos que aparecen en la lista a continuación son elementos de un array”.
Un vector, en lenguajes de programación, no es lo mismo que un vector en
matemáticas.
Un vector (o array) en php es un conjunto de datos. Se declara como el resto de
variables, pero al final de la variable lleva dos corchetes ([ ]) donde se indica la posición
del vector a la que acceder.
Hay algunas funciones relacionadas con los vectores:
 Array ("elemento1","elemento2"). Como ya hemos visto, sirve para
añadir elementos a un vector.
 Reset ($vector). Sirve para poner el puntero al inicio del vector. El
puntero es el que contiene la información sobre la siguiente posición del vector a la que
corresponde acceder.
 Key ($vector). Contiene la posición actual del puntero del vector.
 Next ($vector). Avanza la posición del vector al siguiente elemento. En
caso de no haber más elementos, devuelve false.
 Count ($vector). Devuelve el número de elementos de un vector.
En un vector ordenado, estas funciones no son necesarias, pero en un vector
desordenado, o por ejemplo, en un vector como el último caso, donde las posiciones no
vienen dadas por números, si no por nombres, necesitamos utilizar esas funciones.
Al igual que existe la función reset y next, también existe la función end, que mueve el
puntero a la última posición del vector, y la función prev, que lleva el puntero a la
posición anterior a la actual.
Otra forma de recorrer los vectores, es mediante los comandos list y each. Veamos su
uso:
PRESENTACION EN PANTALLA
Esta vez, hemos usado una única expresión: list($i,$valor)=each($lugar). El comando
list recibe dos variables, una para el contador del puntero del vector y otra que contiene
el valor del vector en cada una de las posiciones de este. Es decir, en $i se guarda la
posición actual del vector, y en $valor se guarda el contenido de la posición $i del
vector, que se lo hemos pasado a la función each, en este caso $lugar. La función
completa, de forma genérica, sería
list($posicion_vector,$valor_vector)=each($vector). La expresión $valor, dentro del
bucle, se puede sustituir por $lugar[$i], aunque no es más práctico hacerlo así.
Para empezar con los vectores, recomiendo utilizar y practicar el primer método
mencionado en esta entrada. Es el más simple y el que menos conocimientos requiere.
Los últimos métodos, que incluyen algunas funciones, son más para cuando los vectores
no están ordenados, en cuyo caso el último método parece el más sencillo.
Se define a un arreglo como un grupo de elementos relacionados entre sí por medio de
índices. Los arreglos pueden ser de una o más dimensiones, los de una dimensión, son
llamados comúnmente "vectores".
A diferencia con el lenguaje C, en PHP, un vector puede tener elementos de distintos
tipos.
Para hacer referencia a un elemento del vector, se utiliza un índice, que indica la
dirección en donde se encuentra un determinado valor. El índice en un arreglo comienza
siempre por cero. ( Más adelante se verá que el índice de un vector, no necesariamente
debe ser un número entero, sino que también puede ser un texto).
EJEMPLO:
Almacenar los nombres de los días de la semana en un vector y luego imprimirlos uno
debajo de otro.
PPRESENTACION EN PANTALLA
Un vector, en PHP, puede contener elementos de distintos tipos de datos, es decir, un
elemento puede ser un número entero, otro una cadena, otro un número con decimales,
etc.
Un modelo de este caso se puede observar en el siguiente ejemplo.
EJEMPLO:
Almacenar en un vector los datos personales de un empleado y luego mostrarlos en
pantalla.
PPRESENTACION EN PANTALLA
EJEMPLO:
Cargar en un vector artículos de librería y luego imprimir la cantidad de ellos.
PRESENTACION EN PANTALLA
Un vector en PHP puede tener elementos en cualquier posición, por lo tanto, se puede
cargar un vector con posiciones no consecutivas, sino en forma totalmente aleatoria.
Para poder recorrer este tipo de vectores se utilizan las funciones next() y prev().
EJEMPLO:
Cargar los nombres de personas en cualquier posición.
PRESENTACIÓN EN PANTALLA
Aquí se observa que los nombres fueron cargados en posiciones aleatorias. Con la
función reset (), se logra llevar el puntero al principio del vector y para poder encontrar
la posición de un elemento se utiliza la función key(), la cual acepta como parámetro el
vector y devuelve la posición. Luego para poder obtener el contenido en esa posición se
utiliza la función current (), que acepta el vector y devuelve el valor almacenado. La
función next () avanza el puntero a la posición siguiente, si se ha llegado al final del
vector, esta función devuelve false.
INCLUSIÓN DE CÓDIGO DESDE UN FICHERO
En ocasiones es necesario cargar el mismo archivo en diferentes scripts y de esa forma
no repetir el mismo código en diversos scripts. Parece entonces razonable que debe
existir algún método o forma de cargar algún archivo externo y de esa forma generar
páginas web más dinámicas.
A este efecto PHP dispone de dos instrucciones para poder cargar archivos:
require("archivo");
Cuando se incluye un archivo con require el intérprete abandona el modo PHP y entra
en modo HTML, una vez abierto el fichero lo incluye hasta su última línea y
posteriormente abandona el modo HTML para volver a posicionarse en el modo PHP.
Su principal diferencia con include () es que no permite la carga condicional.
include("archivo");
Cuando se incluye un archivo con require el intérprete abandona el modo PHP y entra
en modo HTML, una vez abierto el fichero lo incluye hasta su última línea y
posteriormente abandona el modo HTML para volver a posicionarse en el modo PHP.
Permite la carga condicional, es decir, que podemos cargar un archivo o otro según si se
cumple o no una condición.
Luis calero
INTRODUCCION A FUNCIONES
Las funciones son una parte muy importante en cualquier lenguaje de programación y
PHP no es una excepción a ello, ni mucho menos! Definimos primero qué es una
función: una función es como una pieza independiente del programa, una „entidad‟ de
código que está diseñada, mejor dicho, programada para realizar una determinada
acción, como por ejemplo, devolvernos la fecha del sistema.
No es necesario que conozcamos „sus tripas‟, el código que la conforma. Simplemente
debemos saber para qué sirve y cómo llamarla. En posts anteriores de Aprendiendo PHP
ya hemos visto y utilizado algunas de ellas, como la función que he comentado en el
párrafo anterior, la que nos devuelve la fecha y la hora de nuestro sistema: la función
date(). Una función puede o no devolver un resultado, operando sobre unos valores, a
los cuales denominamos argumentos o parámetros. Se construye con una palabra
reservada del lenguaje seguida de paréntesis, los cuales pueden ir vacíos o con una
enumeración de argumentos o parámetros, separados por comas. Posteriormente esos
argumentos pueden sustituirse por los valores que queramos, siempre y cuando sean del
mismo tipo de datos. Por cierto, nos queda pendiente el tema sobre el cambio de tipo de
datos, lo sé… PHP dispone de un buen número de funciones propias del lenguaje, pero
además podemos crear las nuestras propias. Esto último lo veremos bastante más
adelante. Primero, la base.
De todas formas, conviene que le eches un vistazo al listado de todas sus funciones en
su página oficial de PHP: funciones en PHP. Comentaros también que una función
puede que sólo efectúe una operación, como la obtención de la suma de dos números
que ya hemos visto. El resultado podremos imprimirlo en pantalla -con el constructor
del lenguaje echo o print que también hemos utilizado mucho o guardar el resultado en
una variable para utilizarlo más adelante, tal vez en otra función. Ahora vamos a ver
todo esto que hemos explicado con un ejemplo de una función que calcula la raíz
cuadrada de un número, el cual se lo pasamos a la función como un parámetro, siempre
entre paréntesis.
La función nos devolverá un resultado (a la variable la hemos llamado también
$resultado) a través de la palabra reservada return. Luego, para mostrar en pantalla el
resultado, creamos otra variable denominada $raiz_cuadrada a la cual asignamos la
función con un valor de nuestra elección, un argumento.
CONCEPTO DE FUNCIÓN
Una función es un grupo de instrucciones que realiza una tarea, estas instrucciones están
agrupadas en un mismo bloque, el cual puede ser llamado desde cualquier parte del
código.
Esto hace que no tengamos que repetir un cierto código cada vez que queramos realizar
la misma tarea, ya que basta con hacer una llamada a la función y esta se ejecuta.
Hay dos tipos de funciones, las que podemos crear nosotros mismos y las predefinidas.
PHP dispone de muchas funciones ya predefinidas, es decir, tareas que son habituales
en programación, y para las cuales hay ya una función prefabricada, en este caso lo
único que tenemos que hacer es llamar a la función para que esta se ejecute.
Esto lo hemos visto ya en páginas anteriores, hemos visto funciones predefinidas para
ordenar arrays, o para crear ficheros, o para otra serie de tareas.
La forma de llamar a una función predefinida, tal como hemos hecho en las páginas
anteriores, es escribiendo su nombre y luego un paréntesis.
El paréntesis puede llevar o no argumentos o parámetros, es decir, una serie de datos
que hay que pasarle a la función, necesarios para obtener un resultado.
Una de las herramientas más importantes en cualquier lenguaje de programación son las
funciones. Una función consiste en un conjunto de rutinas y acciones que a lo largo del
script van a ser ejecutadas multitud de veces agrupados en una FUNCION y desde
cualquier punto del script puede ser llamada y ejecutada. A su vez, esta función puede
recibir parámetros externos de los cuales dependa el resultado de una función.
Las funciones deben ser colocadas siempre antes de realizar la llamada a la función
(como es lógico). La sintaxis de una función es la siguiente:
function nombre(parámetros){
instrucciones de la función
} para llamar a la función sería de la siguiente forma: nombre(parámetros).
Crearemos una función que realice la suma de dos números y muestre el resultado
PRESENTACION EN PANTALLA
Un hecho relevante que cabe destacar es que las variables que declaremos dentro de la
función solo existirán o tendrán dicho valor dentro de la función.
Existen casos en los cuales no sabemos el número de parámetros que le pasaremos a la
función y en estos casos debemos usar las funciones creadas al efecto como son:
func_num_args() Numero de parámetros que se le han pasado a la función
func_get_args() Devuelve un elemento de los que forman la lista de argumentos
INTRODUCCION A CLASES
A partir de PHP 5, el modelo de objetos ha sido reescrito para permitir un mejor
rendimiento y con más características. Este fue un cambio importante a partir de PHP 4.
PHP 5 tiene un modelo de objetos completo.
Entre las características de PHP 5 están la inclusión de la visibilidad, las clases
abstractas y clases y métodos finales, métodos mágicos adicionales, interfaces,
clonación y tipos sugeridos.
PHP trata los objetos de la misma manera como referencias o manejadores, lo que
significa que cada variable contiene una referencia de objeto en lugar de una copia de
todo el objeto.
DECLARACIÓN Y USOS DE CLASES
La programación orientada a objetos se basa en la programación de clases; a
diferencia de la programación estructurada, que está centrada en las funciones.
Una clase es un molde del que luego se pueden crear múltiples objetos, con similares
características.
Un poco más abajo se define una clase Persona y luego se crean dos objetos de dicha
clase.
Una clase es una plantilla (molde), que define atributos (lo que conocemos como
variables) y métodos (lo que conocemos como funciones).
La clase define los atributos y métodos comunes a los objetos de ese tipo, pero luego,
cada objeto tendrá sus propios valores y compartirán las mismas funciones.
Debemos crear una clase antes de poder crear objetos (instancias) de esa clase. Al crear
un objeto de una clase, se dice que se crea una instancia de la clase o un objeto
propiamente dicho.
Confeccionaremos nuestra primera clase para conocer la sintaxis en el lenguaje PHP,
luego definiremos dos objetos de dicha clase.
Implementaremos una clase llamada Persona que tendrá como atributo (variable) su
nombre y dos métodos (funciones), uno de dichos métodos inicializará el atributo
nombre y el siguiente método mostrará en la página el contenido del mismo.
EJEMPLOS
PRESENTACION EN PANTALLA
La sintaxis básica para declarar una clase es:
Siempre conviene buscar un nombre de clase lo más próximo a lo que representa. La
palabra clave para declarar la clase es class, seguidamente el nombre de la clase y luego
encerramos entre llaves de apertura y cerrado todos sus atributos(variable) y
métodos(funciones).
Nuestra clase Persona queda definida entonces:
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero
Luis calero

Más contenido relacionado

La actualidad más candente

La actualidad más candente (7)

Propuesta Undecimo
Propuesta UndecimoPropuesta Undecimo
Propuesta Undecimo
 
Plataformas de aprendizajes online. Una visión global de los MOOCS.
Plataformas de aprendizajes online. Una visión global de los MOOCS.Plataformas de aprendizajes online. Una visión global de los MOOCS.
Plataformas de aprendizajes online. Una visión global de los MOOCS.
 
Fase planificación
Fase planificaciónFase planificación
Fase planificación
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 
Sofía hernández
Sofía hernándezSofía hernández
Sofía hernández
 
Silabo programacion eb I
Silabo programacion eb ISilabo programacion eb I
Silabo programacion eb I
 
Guia aprendizaje word
Guia aprendizaje wordGuia aprendizaje word
Guia aprendizaje word
 

Destacado

El secreto de la vida cristiana gene edwards
El secreto de la vida cristiana   gene edwardsEl secreto de la vida cristiana   gene edwards
El secreto de la vida cristiana gene edwardsJoan Opong
 
La confirmación
La confirmaciónLa confirmación
La confirmaciónOlga Jacome
 
Fichas para la Confirmación
Fichas para la ConfirmaciónFichas para la Confirmación
Fichas para la Confirmacióncristinamoreubi
 
Los sacramentos de la iglesia catolica yolanda escajadillo
Los sacramentos de la iglesia catolica yolanda escajadilloLos sacramentos de la iglesia catolica yolanda escajadillo
Los sacramentos de la iglesia catolica yolanda escajadilloYolanda Escajadillo
 

Destacado (7)

Mi confirmación
Mi confirmaciónMi confirmación
Mi confirmación
 
El secreto de la vida cristiana gene edwards
El secreto de la vida cristiana   gene edwardsEl secreto de la vida cristiana   gene edwards
El secreto de la vida cristiana gene edwards
 
Sacramentos de iniciación
Sacramentos de iniciaciónSacramentos de iniciación
Sacramentos de iniciación
 
La confirmación
La confirmaciónLa confirmación
La confirmación
 
Fichas para la Confirmación
Fichas para la ConfirmaciónFichas para la Confirmación
Fichas para la Confirmación
 
Los sacramentos de la iglesia catolica yolanda escajadillo
Los sacramentos de la iglesia catolica yolanda escajadilloLos sacramentos de la iglesia catolica yolanda escajadillo
Los sacramentos de la iglesia catolica yolanda escajadillo
 
Nuevas Dinámicas para la Catequesis
Nuevas Dinámicas para la CatequesisNuevas Dinámicas para la Catequesis
Nuevas Dinámicas para la Catequesis
 

Similar a Luis calero

Lenguaje de Programación PHP
Lenguaje de Programación PHPLenguaje de Programación PHP
Lenguaje de Programación PHPJomicast
 
Plataformas para el desarrollo de aplicaciones web
Plataformas para el desarrollo de aplicaciones webPlataformas para el desarrollo de aplicaciones web
Plataformas para el desarrollo de aplicaciones webFreelance
 
Investigacion Lenguaje php - Sindy
Investigacion Lenguaje php - SindyInvestigacion Lenguaje php - Sindy
Investigacion Lenguaje php - SindyJhoel Dgez Garcia
 
Php un lenguaje de programación.........
Php un lenguaje de programación.........Php un lenguaje de programación.........
Php un lenguaje de programación.........HuevitoconCatsup1
 
Gonzalez fanny microformatos.doc
Gonzalez fanny microformatos.docGonzalez fanny microformatos.doc
Gonzalez fanny microformatos.doccaninapanama
 
Investigación Lenguaje Php Eduardo Flores
Investigación Lenguaje Php  Eduardo FloresInvestigación Lenguaje Php  Eduardo Flores
Investigación Lenguaje Php Eduardo FloresJhoel Dgez Garcia
 
Aprendiendo php mysql, javascript, css, html5 LIbro Traducido
Aprendiendo php mysql, javascript, css, html5 LIbro TraducidoAprendiendo php mysql, javascript, css, html5 LIbro Traducido
Aprendiendo php mysql, javascript, css, html5 LIbro Traducidoluigiacarigua
 
C# guia total del programador
C# guia total del programadorC# guia total del programador
C# guia total del programadorSamkai Company
 
WordPress PHP
WordPress PHPWordPress PHP
WordPress PHPCODECTION
 

Similar a Luis calero (20)

Lenguaje de Programación PHP
Lenguaje de Programación PHPLenguaje de Programación PHP
Lenguaje de Programación PHP
 
Plataformas para el desarrollo de aplicaciones web
Plataformas para el desarrollo de aplicaciones webPlataformas para el desarrollo de aplicaciones web
Plataformas para el desarrollo de aplicaciones web
 
Presentación1
Presentación1Presentación1
Presentación1
 
Investigacion Lenguaje php - Sindy
Investigacion Lenguaje php - SindyInvestigacion Lenguaje php - Sindy
Investigacion Lenguaje php - Sindy
 
SEBASTIAN QUINTO TORRES.pptx
SEBASTIAN QUINTO TORRES.pptxSEBASTIAN QUINTO TORRES.pptx
SEBASTIAN QUINTO TORRES.pptx
 
Guia total del programador
Guia total del programadorGuia total del programador
Guia total del programador
 
Php un lenguaje de programación.........
Php un lenguaje de programación.........Php un lenguaje de programación.........
Php un lenguaje de programación.........
 
Servidor php
Servidor phpServidor php
Servidor php
 
Gonzalez fanny microformatos.doc
Gonzalez fanny microformatos.docGonzalez fanny microformatos.doc
Gonzalez fanny microformatos.doc
 
Cuadro comparativo de un AVA
Cuadro comparativo de un AVACuadro comparativo de un AVA
Cuadro comparativo de un AVA
 
CUADRO COMPARATIVO DE UN AVA
CUADRO COMPARATIVO DE UN  AVACUADRO COMPARATIVO DE UN  AVA
CUADRO COMPARATIVO DE UN AVA
 
Softonica
SoftonicaSoftonica
Softonica
 
Investigación Lenguaje Php Eduardo Flores
Investigación Lenguaje Php  Eduardo FloresInvestigación Lenguaje Php  Eduardo Flores
Investigación Lenguaje Php Eduardo Flores
 
Aprendiendo php mysql, javascript, css, html5 LIbro Traducido
Aprendiendo php mysql, javascript, css, html5 LIbro TraducidoAprendiendo php mysql, javascript, css, html5 LIbro Traducido
Aprendiendo php mysql, javascript, css, html5 LIbro Traducido
 
Curso de PHP
Curso de PHPCurso de PHP
Curso de PHP
 
C# guia total del programador
C# guia total del programadorC# guia total del programador
C# guia total del programador
 
C# guia total del programador
C# guia total del programadorC# guia total del programador
C# guia total del programador
 
Fdg2009
Fdg2009Fdg2009
Fdg2009
 
Symfony
SymfonySymfony
Symfony
 
WordPress PHP
WordPress PHPWordPress PHP
WordPress PHP
 

Último

La electricidad y la electrónica.pdf.iluw
La electricidad y la electrónica.pdf.iluwLa electricidad y la electrónica.pdf.iluw
La electricidad y la electrónica.pdf.iluwDanielaEspaa3
 
Taller Evaluativo Tecnologías Web 2.0.docx
Taller Evaluativo Tecnologías Web 2.0.docxTaller Evaluativo Tecnologías Web 2.0.docx
Taller Evaluativo Tecnologías Web 2.0.docxSANTIAGOREYES92
 
PRESENTACION DE "CASO NOKIA" // PDF.EDU.
PRESENTACION DE "CASO NOKIA" // PDF.EDU.PRESENTACION DE "CASO NOKIA" // PDF.EDU.
PRESENTACION DE "CASO NOKIA" // PDF.EDU.SARA BUENDIA RIOJA
 
Violencia sexual a través de Internet [ICAS 2024]
Violencia sexual a través de Internet [ICAS 2024]Violencia sexual a través de Internet [ICAS 2024]
Violencia sexual a través de Internet [ICAS 2024]QuantiKa14
 
Cuadernillo de Comunicación 1. Primer grado de Primaria.pdf
Cuadernillo de Comunicación 1. Primer grado de Primaria.pdfCuadernillo de Comunicación 1. Primer grado de Primaria.pdf
Cuadernillo de Comunicación 1. Primer grado de Primaria.pdfRosaAmeliaLlacsahuan
 
Charla eCommerce Day Bolivia 2024 - Comercio Electrónico en Bolivia 2024
Charla eCommerce Day Bolivia 2024 - Comercio Electrónico en Bolivia 2024Charla eCommerce Day Bolivia 2024 - Comercio Electrónico en Bolivia 2024
Charla eCommerce Day Bolivia 2024 - Comercio Electrónico en Bolivia 2024Mariano Cabrera Lanfranconi
 
Perspectivas en ciberseguridad para el año 2024
Perspectivas en ciberseguridad para el año 2024Perspectivas en ciberseguridad para el año 2024
Perspectivas en ciberseguridad para el año 2024Educática
 

Último (7)

La electricidad y la electrónica.pdf.iluw
La electricidad y la electrónica.pdf.iluwLa electricidad y la electrónica.pdf.iluw
La electricidad y la electrónica.pdf.iluw
 
Taller Evaluativo Tecnologías Web 2.0.docx
Taller Evaluativo Tecnologías Web 2.0.docxTaller Evaluativo Tecnologías Web 2.0.docx
Taller Evaluativo Tecnologías Web 2.0.docx
 
PRESENTACION DE "CASO NOKIA" // PDF.EDU.
PRESENTACION DE "CASO NOKIA" // PDF.EDU.PRESENTACION DE "CASO NOKIA" // PDF.EDU.
PRESENTACION DE "CASO NOKIA" // PDF.EDU.
 
Violencia sexual a través de Internet [ICAS 2024]
Violencia sexual a través de Internet [ICAS 2024]Violencia sexual a través de Internet [ICAS 2024]
Violencia sexual a través de Internet [ICAS 2024]
 
Cuadernillo de Comunicación 1. Primer grado de Primaria.pdf
Cuadernillo de Comunicación 1. Primer grado de Primaria.pdfCuadernillo de Comunicación 1. Primer grado de Primaria.pdf
Cuadernillo de Comunicación 1. Primer grado de Primaria.pdf
 
Charla eCommerce Day Bolivia 2024 - Comercio Electrónico en Bolivia 2024
Charla eCommerce Day Bolivia 2024 - Comercio Electrónico en Bolivia 2024Charla eCommerce Day Bolivia 2024 - Comercio Electrónico en Bolivia 2024
Charla eCommerce Day Bolivia 2024 - Comercio Electrónico en Bolivia 2024
 
Perspectivas en ciberseguridad para el año 2024
Perspectivas en ciberseguridad para el año 2024Perspectivas en ciberseguridad para el año 2024
Perspectivas en ciberseguridad para el año 2024
 

Luis calero

  • 1. INSTITUTO TECNOLOGICO HUAQUILLAS “POST - BACHILLERATO” PORTAFOLIO DE OPTATIVA I DOCENTE: Ing. HECTOR MENA ALUMNO LUIS CALERO CURSO: CUARTO NIVEL – INFORMATICA “A” AÑO LECTIVO: 2014 – 2015 Y
  • 2. PORTAFOLIO DE OPTATIVA I PHP es un lenguaje de programación de uso general de código del lado del servidor originalmente diseñado para el desarrollo web de contenido dinámico. Fue uno de los primeros lenguajes de programación del lado del servidor que se podían incorporar directamente en el documento HTML en lugar de llamar a un archivo externo que procese los datos. El código es interpretado por un servidor web con un módulo de procesador de PHP que genera la página Web resultante. PHP ha evolucionado por lo que ahora incluye también una interfaz de línea de comandos que puede ser usada en aplicaciones gráficas independientes. Puede ser usado en la mayoría de los servidores web al igual que en casi todos los sistemas operativos y plataformas sin ningún costo. INTRODUCCION AL LENGUAJE DE PROGRAMACION PHP
  • 3. AGRADECIMIENTO Este portafolio es el resultado del esfuerzo y dedicación, por esto agradezco a nuestro profesor al Ing. Héctor Mena, mis compañeros, quienes a lo largo de este tiempo han puesto a prueba sus capacidades y conocimientos en el desarrollo de este trabajo. A mis padres quienes a lo largo de toda mi vida han apoyado y motivado mi formación académica, creyeron en mí en todo momento y no dudaron de mis habilidades. A mis profesores a quienes les debo gran parte de mis conocimientos, gracias a su paciencia y enseñanza y finalmente un eterno agradecimiento a esta prestigiosa institución la cual abrió sus puertas a jóvenes como nosotros, preparándonos para un futuro competitivo y formándonos como personas de bien. Luis Alberto Calero Romero
  • 4. DEDICATORIA Dedico este portafolio a Dios y a mis padres. A Dios porque ha estado conmigo a cada paso que doy, cuidándome y dándome fortaleza para continuar, a mis padres, quienes a lo largo de mi vida han velado por mi bienestar y educación siendo mi apoyo en todo momento. Depositando su entera confianza en cada reto que se me presentaba sin dudar ni un solo momento en mi inteligencia y capacidad. Es por ellos que soy lo que soy ahora. Los amo con mi vida. Luis Alberto Calero Romero
  • 5. SÍLABO DE OPTATIVA I Carrera de Tecnología Informática I. DATOS GENERALES.- 1.1. DENOMINACIÓN DEL MÓDULO Optativa I 1.2. SEMESTRE DE ESTUDIOS Cuarto Semestre 1.3. ESPECIALIZACIÓN Informática 1.4. JORNADA Nocturna 1.5. NÚMERO DE ALUMNOS 40 alumnos paralelo “A” 1.6. NÚMERO DE CRÉDITOS 5 1.7. PRERREQUISITOS Conocimientos sobre Base de Datos, Programación orientado a objetos. 1.8. CORREQUISITOS Trabajo investigativo Trabajo grupal Investigación de campo 1.9. TIPO DE MÓDULO Formativo 1.10. SEMESTRE Marzo del 2014 a Mayo del 2014 1.11. FECHA DE INICIO 10 de Marzo del 2014 1.12. FECHA DE TÉRMINO 19 de Mayo del 2013 1.13. PERIODOS SEMANALES 5 periodos 1.14. DURACIÓN EN HORAS 80 Horas 1.15. HORAS PRESENCIALES 80 Horas 1.16. DOCENTE RESPONSABLE Ing. Hector Mena
  • 6. II. FUNDAMENTACIÓN La creciente demanda del WWW ha permitido el nacimiento de los lenguajes de programación web, permitiendo crear paginas dinámicas con conexión a una base de datos. PHP, es un lenguaje de programación que ha venido creciendo año tras año, haciendo que la curva de aprendizaje de este sea menor frente a otros lenguajes de programación. En PHP podemos generar aplicaciones totalmente dinámicas, lo cual significa menos tiempo de programación frente a las paginas estáticas, además este lenguaje de programación ofrece un gran soporte a la mayoría de las base de datos existentes en la actualidad. Así mismo una de las grandes empresas como Facebook, decidieron montar todo el núcleo de la aplicación en PHP. PHP hace posible resolver problemas en un entorno web, independiente del sistema operativo donde el usuario final lo ejecute, permitiendo ejecutar las aplicaciones desarrolladas en cualquier plataforma posible siempre y cuando se cuente con un explorador web. III. COMPETENCIAS GENERALES a. Conocer las bondades y beneficios que un lenguaje de programación web ofrece, frente a los lenguajes de programación de escritorio. b. Comprender los conceptos básicos de programación en PHP c. Comprender las infinidades de aplicaciones que se pueden desarrollar en PHP. d. Instalar un servidor apache y MySQL.
  • 7. IV. APORTES TEÓRICOS 1 INTRODUCCIÓN A PHP 1.1 Terminología de PHP. 1.2 Historia y usos y ejemplos de éxito de PHP. 1.3 Terminología y uso de XAMPP 1.4 Historia y uso de Apaches. 2 TIPOS DE DATOS Y VARIABLES EN PHP 2.1 Conceptos de variables 2.2 Manejo de variables 2.2.1 Concatenación de cadenas de caracteres. 2.2.2 Manejo de variables numéricas. 3 ESTRUCTURAS SELECTIVAS Y REPETITIVAS 3.1 Estructuras selectivas 3.1.1 Concepto, estructura y manejo de IF. 3.1.2 Concepto, estructura y manejo de IF y ELSE. 3.2 Estructuras repetitivas 3.2.1 Concepto, estructura y manejo de FOR. 3.2.2 Concepto, estructura y manejo de WHILE. 3.2.3 Concepto, estructura y manejo de DO WHILE. 3.2.4 Concepto, estructura y manejo de FOREACH. 4 COMPONENTES HTML 4.1 Uso y funcionamiento del form. 4.2 Uso y funcionamiento del text. 4.3 Uso y funcionamiento del checkbox. 4.4 Uso y funcionamiento del radio button. 4.5 Uso y funcionamiento del select. 4.6 Uso y funcionamiento del img. 4.7 Uso y funcionamiento del textarea.
  • 8. 4.8 Uso y funcionamiento del campo oculto. 4.9 Uso y funcionamiento del password. 4.10 Uso y funcionamiento de tablas. 5 VECTORES Y ARCHIVOS 5.1 Introducción a vectores. 5.2 Declaración de vectores. 5.3 Uso de vectores. 5.4 Introducción a vectores asociativos. 5.5 Declaración de vectores asociativos. 5.6 Uso de vectores asociativos. 5.6 Introducción a archivos usos. 5.6 Leer un archivo con PHP. 5.6 Escribir en un archivo con PHP. 6 PROGRAMACION ORIENTADA A OBJETOS 6.1 Introducción a funciones. 6.2 Declaración y uso de funciones. 6.3 Introducción a clases. 6.4 Declaración y uso de clases. 7 CONEXIÓN A MySQL 6.1 Introducción a MySQL. 6.1 Creación de un base de datos en MySQL. 6.1 Conexión de PHP a MySQL. 6.1 Insertar valores en MySQL desde PHP. 6.1 Actualizar valores en MySQL desde PHP. 6.1 Eliminar valores en MySQL desde PHP. 6.1 Seleccionar valores en MySQL desde PHP. V. ESTRATEGIAS METODOLÓGICAS Se aplicará permanentemente las siguientes estrategias metodológicas:  Dinámicas Grupales
  • 9.  Trabajo autónomo  Trabajo grupales  Prácticas  Aportes individuales  Debates  Evaluación y análisis de resultados. VI. MATERIALES EDUCATIVOS Y OTROS RECURSOS DIDÁCTICOS  Textos de consulta  Programa del módulo  Marcadores  Pizarra  Organizadores gráficos  Las Tic's  Diapositivas  Laboratorio de computación VII. CAPACIDADES ESPECÍFICAS A DESARROLLARSE  Conocer PHP como lenguaje de programación web para la creación de páginas dinámicas.  Diferenciar las diferencias entre un lenguaje de programación en entorno web y un lenguaje de programación sobre los entornos de escritorios.  Creación de sistemas informáticos en entorno web. VIII. CONTEXTO DE APLICACIÓN  Crear una aplicación web con MySQL como motor de base de datos, con la finalidad de afrontarse a un problema de la vida real, donde puedan emplear lo aprendido. IX. TRABAJO AUTÓNOMO o Conocer los beneficios de PHP frente a otros lenguajes. o Utilización de PHP, como una opción al momento de programar una aplicación. o Emplear MySQL como motor de base de datos por defecto para PHP
  • 10. X. INDICADORES, TÉCNICAS E INSTRUMENTOS DE EVALUACIÓN PARÁMETRO DE EVALUACIÓN DE PROCESO ACTIVIDADES ACADÉMICAS VALORACIÓN NUMÉRICA Intraclase Participación en clase 4 Participación grupal (Talleres) Lecciones Exposiciones Extraclase Deberes 2 Proyecto Evaluación Evaluación por créditos 4 NOTA FINAL MÁXIMA (10/10) 10 PUNTOS XI. BIBLIOGRAFÍA  COBO, Àngel. PHP y MySQL tecnología para el desarrollo de aplicaciones web. Dìaz de Santos. Primera Edición. 2005. Madrid  Heurtel, Oliver. PHP y MySQL domine el desarrollo de un sitio web dinámico e interactivo. Ediciones ENI. Primera Edición edición. 2009. Barcelona  David, Sklar, Trancbtenberg, Adam. PHP cookbook. O‟REILLY . Primera edición. 2003  Powers, David. Desarrollo web dinámico con Dreamweaver 8 y PHP. Anaya Multimedia-Anaya interactiva. 2006  Welling, Luke. Thomson, Laura. PHP and MySQL Web Development.Sams Publishing. Segunda edición. 2003  Holsner, Steven. Manual avanzado de PHP 5, Grupo Anaya, Primera edición, 2005.
  • 11. XII. INTEGRIDAD ACADÉMICA Los trabajos que no se presenten la fecha y la hora indicada tendrá un equivalente a la mitad de la valoración, solo en casos especiales debidamente justificados se calificará sobre el mismo valor. Las evaluaciones que no se den el día y la hora señalada tendrán una asignación de dos puntos sobre diez, excepto en casos especiales los mismos que deben ser autorizados por la máxima autoridad del plantel. Si se encuentra un trabajo y/o informe como un plagio que atenta a la honestidad e integración de cada estudiante, serán anulados los trabajos o informes y obtendrá una valoración de dos a los trabajos de plagio. XIII. FIRMA DE RESPONSABILIDAD  DOCENTE: Ing. Héctor Mena  CELULAR: 0991423964  EMAIL: patos803@hotmail.com  DIRECCIÓN: Huaquillas, 9 de Octubre entre Carchi e Imbabura. FIRMA DEL DOCENTE FIRMA DE LA DIRECTORA
  • 12. FORMATO DE SÍLABO FECHA APORTES TEÓRICOS CAPACIDADES ESPECÍFICAS A DESARROLLARSE HORAS DE CLASE CONTEXTO DE APLICACIÓN TRABAJO AUTÓNOMO Del 10 al 12 de Marzo del 2014 INTRODUCCIÓN A PHP Terminología de PHP. Historia y usos y ejemplos de éxito de PHP. Terminología y uso de XAMPP Historia y uso de Apaches. Conocer el lenguaje de programación PHP, historia, orígenes y empresas que trabajan actualmente con él. 6hs  Elaboración de un cuadro sinóptico con los datos relevantes de los conceptos. Del 14 al 19 de Marzo del 2014 TIPO DE DATOS Y VARIABLES Conceptos de variables Manejo de variables Concatenación de cadenas de caracteres. Manejo de variables numéricas. Diferenciar e interpretar el manejo de los tipos de datos y variables en PHP. 8hs.  Trabajo en equipo.  Elaboración de organizadores gráficos.
  • 13. Del 21 al 26 de Marzo del 2014 ESTRUCTURAS SELECTIVAS Y REPETITIVAS Estructuras selectivas Concepto, estructura y manejo de IF. Concepto, estructura y manejo de IF y ELSE. Estructuras repetitivas Concepto, estructura y manejo de FOR. Concepto, estructura y manejo de WHILE. Concepto, estructura y manejo de DO WHILE. Concepto, estructura y manejo de FOREACH. Conocer y manejar las estructuras selectivas y repetitivas dentro de PHP. 8hs.  Ejercicios Prácticos.  Preguntas de Reflexión  Práctica Dirigida.  Evaluación. Del 28 de Marzo al 9 de Abril del 2014 COMPONENTES HTML Uso y funcionamiento del form. Uso y funcionamiento del text. Uso y funcionamiento del checkbox. Uso y funcionamiento del radio button. Uso y funcionamiento del select. Uso y funcionamiento del img. Uso y funcionamiento del textarea. Conocer y dominar los componentes más indispensables existentes en HTML. 16hs.  Ejercicios Prácticos.  Preguntas de Reflexión.  Práctica Dirigida.  Trabajo en equipo  Evaluación.
  • 14. Uso y funcionamiento del campo oculto. Uso y funcionamiento Uso y funcionamiento de tablas. Del 11 al 16 de Abril del 2014 VECTORES Y ARCHIVOS Introducción a vectores. Declaración de vectores. Uso de vectores. Introducción a vectores asociativos. Declaración de vectores asociativos. Uso de vectores asociativos. Introducción a archivos usos. Leer un archivo con PHP. Escribir en un archivo con PHP. Diferencias los distintos tipos de vectores existentes en PHP, junto con la creación y lectura de archivos en PHP 8hs.  Ejercicios Prácticos  Preguntas de Reflexión.  Trabajo en equipo  Evaluación. Del 18 de Abril al 7 de Mayo del 2014 PROGRAMACION ORIENTADA A OBJETOS Introducción a funciones. Declaración y uso de funciones. Introducción a clases. Declaración y uso de clases. Conocer y Dominar la programación orientada a objetos asi como la creación de funciones dentro de PHP. 20hs.  Ejercicios Prácticos  Trabajo en equipo  Preguntas de Reflexión.
  • 16. LENGUAJES DE PROGRAMACIÓN QUÉ ES UN LENGUAJE DE PROGRAMACIÓN El "cerebro" de un ordenador es la Unidad Central de Procesamiento (CPU). En general una CPU no puede almacenar más que unos pocos números y realizar operaciones matemáticas básicas con ellos. Además esos números se pueden recibir de o enviar a la memoria o a los distintos dispositivos de entrada y salida (teclado, monitor, disco duro, impresora, etc). Para cada una una de estas operaciones (obtener números de un sitio, hacer cálculos con esos valores, enviar el resultado a otro sitio) existe una instrucción diferente y cada CPU tiene su propio juego de instrucciones, más o menos amplio dependiendo de la complejidad de la CPU. En la memoria del ordenador se puede guardar una secuencia de esas instrucciones, que el ordenador es capaz de seguir desde el principio hasta el final (aunque esas instrucciones no tienen por qué ejecutarse siempre en el mismo orden porque existen instrucciones para saltar de un punto a otro de la secuencia de instrucciones). Esas secuencias se llaman programas ejecutables. Cualquier función que realice un ordenador, por sofisticada que parezca, en realidad no es más que una larga secuencia de instrucciones elementales. Para los humanos resulta muy complicado escribir directamente los programas ejecutables porque cualquier tarea requiere muchísimos pasos, que el ordenador ejecuta de forma instantánea, pero para que los ordenadores funcionen es necesario disponer de programas ejecutables. Existen muchos lenguajes de programación diferentes, pero en general, un programador que quiere conseguir que el ordenador realice determinadas operaciones, tiene que seguir estos pasos:  El programador escribe una secuencia de instrucciones siguiendo las reglas de un lenguaje de programación. Esa secuencia de instrucciones se guarda en uno o varios archivos de texto. A estos archivos se les llama código fuente del programa.
  • 17.  Mediante un programa especial (llamado compilador o intérprete) capaz de realizar esa tarea el ordenador convierte los archivos de texto en archivos ejecutables, es decir, traduce la secuencia de instrucciones escritas por el programador en instrucciones. A estos archivos ejecutables se les llama programas ejecutables.  El programador o cualquier otro usuario le puede pedir al ordenador que ejecute el programa ejecutable. En el ejemplo citado de las ráices cuadradas, el compilador o intérprete tendría que ser capaz de convertir la instrucción de raíz cuadrada que hubiera escrito el programador en una serie de sumas, restas, multiplicaciones o divisiones que acaben dando el resultado deseado. PÁGINAS, WEB, LENGUAJES DE PROGRAMACIÓN Y BASES DE DATOS La World Wide Web (o simplemente, la web) fue ideada por Tim Berners Lee en 1990, empezó a funcionar en el CERN en 1991 y se extendió rápidamente por las Universidades del mundo (en aquel entonces Internet era una red a la que sólo tenían acceso entidades gubernamentales, particularmente entidades educativas). En 1992 algunos proveedores comerciales empezaron a dar acceso a particulares y empresas, lo que popularizó todavía más la web. En aquellos años, las páginas web solían ser documentos de texto guardados en algún directorio de un servidor y a los que se podía acceder mediante los primeros navegadores web. Cada página web que se veía en el navegador correspondía a un fichero en el servidor. La imagen siguiente ilustra de forma simplificada el esquema de funcionamiento:
  • 18.  El usuario escribe la dirección de la página web en su navegador  El navegador la solicita al servidor web correspondiente (este paso requiere la participación de máquinas intermedias que no se comentan aquí)  El servidor lee el fichero que corresponde a esa página web  El servidor envía el fichero al navegador  El navegador muestra la página web al usuario Este esquema de funcionamiento es suficiente para sitios web pequeños creados por una sola persona, pero en cuanto un sitio web empieza a crecer, empiezan a surgir los problemas. Por ejemplo:  si el sitio contiene muchas páginas es necesario crear menús que permitan orientarse por el sitio. Como cada página debe contener el menú, cualquier cambio en el menú obliga a modificar todas las páginas.  si el sitio modifica a menudo su contenido (por ejemplo, la web de un periódico), tener que editar manualmente los ficheros ralentiza el proceso.  si el sitio es creado por varias personas, cualquiera puede modificar por error los ficheros de otras personas y si varias personas quieren modificar el mismo fichero se pueden producir conflictos.  si se quiere permitir la participación del público (foros, comentarios en blogs, etc), esta participación depende de que uno de los autores modifique los ficheros, lo que ralentiza el proceso.  si personas sin conocimientos técnicos quieren participar en la creación del sitio, pueden cometer errores editando los ficheros. La solución es que las páginas no sean ficheros estáticos guardados en el disco, sino que se generen cuando el usuario las solicite. Por ejemplo, para resolver el problema de los menús comentado anteriormente, una solución sería que el menú estuviera en un fichero aparte y cuando el usuario solicitara una página, el menú se añadiera al principio de cada página (nota: no me refiero a la composición de páginas mediante frames, una solución desaconsejada hace muchos años, sino a componer un único fichero a partir de varios).
  • 19. Esa generación de las páginas se puede hacer de varias maneras. Una de ellas es recurrir a lenguajes de programación generales o específicos (como PHP). Desde sus inicios, los servidores web permiten recurrir a lenguajes de programación para generar las páginas web. La imagen siguiente ilustra de forma simplificada el esquema de funcionamiento:  El usuario escribe la dirección de la página web en su navegador  El navegador la solicita al servidor web correspondiente (este paso requiere la participación de máquinas intermedias que no se comentan aquí)  El servidor detecta que no es un documento ya existente sino que tiene que generarse, así que recurre al intérprete del lenguaje  El intérprete del lenguaje ejecuta el programa y la salida del programa se envía al servidor  El servidor envía el fichero al navegador  El navegador muestra la página web al usuario Es importante señalar que al usuario le resulta indiferente que la página estuviera guardada en el disco duro o que se haya generado en ese momento, de la misma manera que le resulta indiferente el lenguaje de programación que haya generado el documento. El navegador recibe el documento en ambos un documento de texto que contiene etiquetas html y lo muestra al usuario. A veces, el usuario puede suponer que la página que se le está sirviendo se ha generado mediante PHP ya que la dirección de la página termina por .php en vez del habitual .html, aunque no se puede estar seguro de que sea realmente así.
  • 20. Pero el uso de lenguajes de programación no suele ser suficiente. Si la información está diseminada en multitud de trozos para organizar y acceder fácilmente a toda esa información, es conveniente utilizar algún sistema gestor de bases de datos. Existen muchos sistemas gestores de bases de datos y cualquier lenguaje de programación puede conectarse a ellas y realizar consultas. La imagen siguiente ilustra de forma simplificada el esquema de funcionamiento:  El usuario escribe la dirección de la página web en su navegador  El navegador la solicita al servidor web correspondiente (este paso requiere la participación de máquinas intermedias que no se comentan aquí)  El servidor detecta que no es un documento ya existente sino que tiene que generarse, así que recurre al intérprete del lenguaje  El intérprete del lenguaje ejecuta el programa, que requiere ejecutar consultas al sistema gestor de bases de datos y la salida del programa se envía al servidor  El servidor envía el fichero al navegador  El navegador muestra la página web al usuario Como antes, al usuario le resulta indiferente que se haya accedido o no a un sistema gestor de bases de datos. El navegador recibe el documento en ambos un documento de texto que contiene etiquetas html y lo muestra al usuario.
  • 21. TERMINOLOGIA DE PHP PHP, acrónimo de "PHP: Hypertext Preprocessor", es un lenguaje de 'scripting' de propósito general y de código abierto que está especialmente pensado para el desarrollo web y que puede ser embebido en páginas HTML. Su sintaxis recurre a C, Java y Perl, y es fácil de aprender. La meta principal de este lenguaje es permitir a los desarrolladores web escribir dinámica y rápidamente páginas web generadas; aunque se puede hacer mucho más con PHP. PHP es un lenguaje de alto nivel que se ejecuta en el servidor. El significado de las siglas PHP es pre-procesamiento de hipertexto, es decir, PHP procesa el hipertexto o HTML y lo devuelve para que el navegador pueda interpretarlo. Así, por ejemplo, podemos leer el contenido de una base de datos. Aunque pueda parecer extraño, no es posible crear una página Web únicamente con lenguaje PHP. PHP necesita escribir un código interpretable por el navegador para expresar las acciones que desarrolla. Así programar en PHP implica saber programar en HTML, en CSS o en javascript. Los lenguajes de creación de página Web más usados son HTML, javascript y CSS; y estos lenguajes se pueden ejecutar en el mismo ordenador del usuario. Sin embargo PHP no se puede ejecutar en un ordenador de la misma manera que los hace HTML, javascript o CSS. Para que pueda ejecutarse debemos instalar un servidor para PHP en nuestro ordenador. Aunque hay paquetes de software que instalan todos los componentes como Apache, PHP y un administrador de bases de datos como PHPMyAdmin, lo más rápido es crear tus script y subirlos a un servidor listo para operar con PHP. No todos los servidores, es especial los gratuitos, soportan PHP.
  • 22. HISTORIA Y USOS Y EJEMPLOS DE ÉXITO DE PHP Es importante señalar que la evolución de PHP es diferente a la de otros lenguajes de programación. No hay ningún organismo encargado de la definición del lenguaje PHP (y empresas que implementan esa definición en diferentes compiladores o intérpretes), sino que el lenguaje evoluciona a la vez que lo hace el intérprete "oficial" de PHP publicado desde la versión 4 por la empresa Zend. Existen otros motores, como Hip- hop creado por Facebook, pero son minoritarios. Aunque el lenguaje y el intérprete son cosas conceptualmente distintas, es habitual referirse a ambos como PHP. PHP (el intérprete) ha sido publicado siempre como software libre, con una licencia llamada licencia PHP. Esta licencia es una licencia libre sin copyleft. Como la licencia impone restricciones al uso del término PHP en productos derivados, esta licencia es incompatible con la licencia GPL, por lo que la Free Software Foundation recomienda que sólo se utilice para programar extensiones del propio PHP. PHP fue creado por Rasmus Lerdorf en 1995. El nombre PHP significaba entonces Personal Home Page y hacía referencia a que era un lenguaje diseñado para facilitar la generación de páginas web, en primer lugar en el sitio web personal de Rasmus Lerdorf y rápidamente en muchos sitios. Desde entonces, PHP no ha dejado de evolucionar, proporcionando nuevas características. En noviembre de 1997 Rasmus Lerdorf publicó una segunda versión del lenguaje, PHP2
  • 23. En junio de 1998 se publicó PHP 3. Esta versión fue creada por Zeev Suraski y Andi Gutmans, que desde entonces dirigen el desarrollo de PHP (con la colaboración de Lerdorf). A partir de esta versión PHP significa PHP: Hypertext Preprocessor (añadiéndose a la lista de acrónimos recursivos como GNU, Lame, Wine, RPM, etc.). La característica más decisiva de esta versión fue la mejora de la extensibilidad del lenguaje, permitiendo que muchos programadores aportaran nuevos módulos, pero esta versión también simplificó la sintaxis del lenguaje e introdujo la posibilidad de utilizar una sintaxis orientada a objetos. En 1999 Zeev Surski y Andi Gutmans crearon la empresa Zend Technologies, que desarrolla productos basados en PHP (servidores, editores, etc.). En mayo de 2000 se publicó PHP 4, que incluía un nuevo motor llamado Zend Engine. Esta versión era bastante más rápida que la anterior y añade nuevas características como las sesiones. En julio de 2004 se publicó PHP 5, que incluía un nuevo motor llamado Zend Engine 2. La característica más importante de esta versión es la mejora de la programación orientada a objetos. La siguiente versión prevista, que se tendría que publicar como PHP 6, se fijó el objetivo de dar a PHP soporte completo de Unicode, el juego de caracteres universal. Pero ese objetivo ha resultado ser mucho más difícil de conseguir de lo esperado y en 2010 prácticamente se tiró la toalla y sigue sin estar claro si se alcanzará el objetivo. Mientras tanto, se han ido publicando versiones 5.X que han ido introduciendo bastantes novedades en el lenguaje (5.3 publicada en junio de 2009, 5.4 publicada en marzo de 2012 y 5.5 publicada en junio de 2013).
  • 24. A EVOLUCIÓN DE PHP EN EL TIEMPO. LAS VERSIONES. PHP 3 PHP 3.0, liberada en 1998, era la primera versión que se parecía fielmente al PHP tal y como lo conocemos hoy en día. Una de las mejores características de PHP 3.0 era su gran extensibilidad. Cuando hablamos de extensibilidad nos referimos a la existencia de un núcleo o core al que se le pueden ir añadiendo fragmentos de código que permiten hacer más cosas. Se trataría de algo parecido a tener una base sobre la que podemos ir añadiendo piezas. Veamos una imagen: En esta imagen, correspondiente a los juegos de niños armables “Lego”, vemos cómo existe una base verde. Esa base sería el core o núcleo de PHP. Luego, aprovechando que esa base tiene preparados los anclajes para seguir poniendo piezas, vemos que se le han añadido extensiones. Por ejemplo, la primera extensión que tiene una base azul podría ser una extensión que permita la gestión de correos electrónicos. La segunda extensión,
  • 25. que tiene una base verde, podría ser una extensión para gestionar imágenes, y así sucesivamente… Además de facilitar el trabajo con muchas bases de datos, protocolos y sistemas informáticos, las características de extensibilidad de PHP 3.0 atrajeron a muchos programadores a unirse al proyecto y enviar nuevos módulos de extensión. Esta fue la clave del enorme éxito de PHP 3.0: que fue un proyecto abierto al que se unieron muchos programadores formando una comunidad. Todo el nuevo lenguaje fue liberado con el nombre de 'PHP', con el significado de ser un acrónimo juego de las letras iniciales de “Hypertext Preprocessor”. A partir de su lanzamiento, PHP creció pasando a ser usado por miles de programadores y cientos de miles de sitios Web. Se estima que PHP 3.0 conquistó una fracción del total de servidores mundiales de en torno al 10 %, lo cual fue un éxito rotundo. PHP 4 La principal novedad de PHP 4 está en el intérprete del lenguaje PHP. Con la nueva versión se lograron aumentos de entre 5 y 10 veces en la velocidad de ejecución de páginas PHP respecto a la versión anterior, lo cual fue un salto muy importante. Además del aumento en rendimiento, se introdujeron novedades relacionadas con el soporte de objetos en PHP. La programación orientada a objetos es una forma avanzada de programación y gracias a estas características PHP se encuentra entre los lenguajes de vanguardia. Otra nueva característica de PHP 4 fue que podía soportar hilos cosa que en PHP 3 no era posible. Un hilo es básicamente una tarea que puede ser ejecutada en paralelo con otra tarea. La principal ventaja que podemos obtener de esta funcionalidad es que se pueden estar haciendo varias cosas al mismo tiempo sin tener que esperar a que se termine una tarea para empezar otra. Para los programadores, PHP 4 incluía un
  • 26. depurador. Un depurador viene siendo un asistente que nos ayuda a detectar dónde se encuentran los errores en los programas o código de desarrollo. Esto ayuda mucho al programador y le evita quebraderos de cabeza por no poder localizar errores. Gracias al depurador, se podían seguir con mayor profundidad esos errores “misteriosos” que hacían perder mucho tiempo. PHP 5 La principal característica de PHP 5 con respecto a PHP 4 es la mejora en la programación orientada a objetos (POO). Aunque este tipo de programación ya se había introducido en el lenguaje desde PHP 3, las versiones anteriores a PHP 5 tenían bastantes limitaciones para el uso de este tipo de programación. La orientación a objetos es una manera de programar que es muy usada hoy en día. No entraremos en detalles sobre ella de momento, porque es algo avanzado dentro de la programación y en este curso trataremos de avanzar poco a poco desde lo más básico hasta lo más complejo. El principal objetivo de PHP 5 ha sido mejorar los mecanismos de programación orientada a objetos para solucionar las carencias de las anteriores versiones. El resultado ha sido un lenguaje más potente, que cada vez es más popular y que cada vez se usa más, tanto a nivel profesional en empresas como a nivel de usuarios que quieren construir pequeñas páginas o portales web. Algunas personas dicen que PHP se parece cada vez más a Java, que es quizás el lenguaje de programación más usado en el mundo, y que también es un lenguaje de programación orientado a objetos.
  • 27. ¿QUÉ VERSIÓN DE PHP USAR? La versión de PHP a usar depende en gran medida de qué desarrollo queramos hacer. Por ejemplo, si vamos a usar PHP para el gestor de contenidos Joomla 1.0, no es lo mismo que si vamos a usarlo para Joomla 1.5 porque cada uno tiene sus propias necesidades en cuanto a la versión de PHP a usar. Es decir, cada aplicación debe ir con su versión de PHP adecuada al igual que a un vehículo a motor debemos echarle el tipo de combustible adecuado. Si a un coche diesel le echamos gasolina, no funcionará bien. Si una aplicación que fue concebida para PHP 4 la intentamos ejecutar usando PHP 5, probablemente ocurra lo mismo: no funcionará bien. También debemos tener en cuenta que usar siempre la última versión de algo tiene sus riesgos. Por ejemplo las últimas versiones no suelen estar tan testeadas como las anteriores y se pueden producir „agujeros de seguridad‟ que tendremos que tapar con algún parche. CRÍTICAS A PHP Como cualquier lenguaje de programación, es fácil encontrar en las web opiniones muy críticas hacia PHP, sobre todo en referencia a la seguridad. Al leer estas críticas hay que tener en cuenta que:  PHP ha evolucionado mucho. Muchos defectos del lenguaje han sido corregidos en versiones posteriores, por lo que conviene comprobar si las opiniones que se leen no son opiniones antiguas que ya no tienen sentido. Por el mismo motivo, hay que tener cuidado cuando se leen manuales o tutoriales antiguos, porque pueden estar recomendando técnicas de programación obsoletas.  PHP es extremadamente popular. Muchos programas de PHP han sido escritos por programadores que intentan compensar con su entusiasmo su falta de conocimientos, pero PHP no es un lenguaje intrínsecamente malo o inseguro.
  • 28. QUE ES EL XAMPP XAMPP es un servidor independiente de plataforma de código libre. Te permite instalar de forma sencilla Apache en tu propio ordenador, sin importar tu sistema operativo (Linux, Windows, MAC o Solaris). Y lo mejor de todo es que su uso es gratuito. XAMPP incluye además servidores de bases de datos como MySQL y SQLite con sus respectivos gestores phpMyAdmin y phpSQLiteAdmin. Incorpora también el intérprete de PHP, el intérprete de Perl, servidores de FTP como ProFTPD ó FileZilla FTP Serve, etc. entre muchas cosas más. Si alguna vez has intentado instalar Apache, sabes que no es una tarea fácil, sin embargo con XAMPP todo es diferente. Una de las ventajas de usar XAMPP es que su instalación es de lo más sencilla, basta descargarlo, extraerlo y comenzar a usarlo. PARA QUÉ SIRVE Como ya lo debes haber deducido, XAMPP es una herramienta de desarrollo que te permite probar tu trabajo (páginas web o programación por ejemplo) en tu propio ordenador sin necesidad de tener que accesar a internet. Si eres un desarrollador que recién está comenzando, tampoco debes preocuparte sobre las configuraciones ya que XAMPP te provee de una configuración totalmente funcional desde el momento que lo instalas (básicamente lo extraes). Sin embargo, es bueno acotar que la seguridad de datos no es su punto fuerte, por lo cual no es suficientemente seguro para ambientes grandes o de producción. Paquetes que vienen con XAMPP Paquetes básicos:  Apache, el servidor Web más famoso.  MySQL, una excelente base de datos de código libre.  PHP y Perl: lenguajes de programación.  ProFTPD: un servidor FTP.  OpenSSL: para soporte a la capa de sockets segura.
  • 29. Paquetes gráficos:  GD (Graphics Draw): la librería de dibujo de gráficos.  libpng: la librería oficial de referencia de PNG.  libpeg: la librería oficial de referencia de JPEG.  ncurses: la librería de gráficos de caracteres. Paquete de bases de datos:  gdbm: la implementación GNU de la librería standard dbm de UNIX.  SQLite: un motor de base de datos SQL muy pequeño y cero configuración.  FreeTDS: una librería de base de datos que da a los programas de Linux y UNIX la habilidad de comunicarse con Microsoft SQL y Sybase. Paquetes XML:  expat: una librería parser de XML.  Salbotron: una toolkit de XML.  libxml: un parser C de XML y un toolkit para GNOME. Paquetes PHP:  PEAR: la librería de PHP.  Una clase pdf que genera documentos PDF dinámicos con PHP.  TURCK MMCache: un potenciador de la performance de PHP. Otros paquetes:  zlib: una librería de compresión.  mod_perl: empotra un intérprete de Perl en Apache.  gettext: un conjunto de herramientas que asiste a los paquetes GNU para producir mensajes multilingües.
  • 30. INSTALACIÓN DE XAMPP INSTALACIÓN DE LAS APLICACIONES Nota: Antes de instalar un servidor de páginas web es conveniente comprobar si no hay ya uno instalado. Para ello, es suficiente con abrir el navegador y escribir la dirección http://localhost. Si no se obtiene un mensaje de error es que hay algún servidor de páginas web instalado. Estos apuntes están preparados para la versión XAMPP 1.8.3.2 (del 4 de diciembre 2013), que incluye Apache 2.4.7, PHP 5.5.6, MySQL 5.6.14 y otras utilidades,. Versiones posteriores necesitarán probablemente otros cambios en los archivos de configuración, por lo que se recomienda utilizar XAMPP 1.8.3 si se van a seguir estos apuntes.
  • 31. Una vez obtenido el archivo de instalación de XAMPP, hay que hacer doble clic sobre él para ponerlo en marcha. Las imágenes que se muestran a continuación corresponden a la instalación de XAMPP 1.8.3.1 en Windows 7 (a partir de XAMPP 1.8.3, XAMPP no se puede instalar en Windows XP ya que PHP 5.5 no se puede instalar en Windows XP). Al poner en marcha el instalador XAMPP nos muestra dos avisos:  El primero aparece si en el ordenador hay instalado un antivirus:  El segundo aparece si está activado el Control de Cuentas de Usuario y recuerda que algunos directorios tienen permisos restringidos:
  • 32. A continuación se inicia el asistente de instalación. Para continuar, hay que hacer clic en el botón "Next". Los componentes mínimos que instala XAMPP son el servidor Apache y el lenguaje PHP, pero XAMPP también instala otros elementos. En la pantalla de selección de componentes puede elegirse la instalación o no de estos componentes. para este curso se necesita al menos instalar MySQL y phpMyAdmin.
  • 33. En la siguiente pantalla se puede elegir la carpeta de instalación de XAMPP. La carpeta de instalación predeterminada es C:xampp. Si se quiere cambiar, hay que hacer clic en el icono de carpeta y seleccionar la carpeta donde se quiere instalar XAMPP. Para continuar la configuración de la instalación, hay que hacer clic en el botón "Next". La siguiente pantalla nos ofrece información sobre los instaladores de aplicaciones para XAMPP creados por Bitnami. Para que no se abra la página web de Bitnami, habría que desmarcar la casilla correspondiente. Para empezar la instalación de XAMPP, hay que hacer clic en el botón "Next" en la pantalla siguiente.
  • 34. A continuación, se inicia el proceso de copia de archivos, que puede durar unos minutos. Una vez terminada la copia de archivos, se muestra la pantalla que confirma que XAMPP ha sido instalado. Hay que hacer clic en el botón "Finish". Para no abrir a continuación el panel de control de XAMPP hay que desmarcar la casilla correspondiente.
  • 35. EL PANEL DE CONTROL DE XAMPP Y EL CORTAFUEGOS DE WINDOWS El panel de control de XAMPP se divide en tres zonas:  la zona de módulos, que indica para cada uno de los módulos de XAMPP: si está instalado como servicio, su nombre, el identificador de proceso, el puerto utilizado e incluye unos botones para iniciar y detener los procesos, administrarlos, editar los archivos de configuración y abrir los archivos de registro de actividad.  la zona de notificación, en la que XAMPP informa del éxito o fracaso de las acciones realizadas  la zona de utilidades, para acceder rápidamente
  • 36. Para poner en funcionamiento Apache, hay que hacer clic en el botón Start correspondiente a Apache: Como Apache abre puertos en el ordenador (por primera vez), el cortafuegos de Windows pide al usuario confirmación. Para poder utilizarlo hace falta al menos autorizar el acceso en redes privadas:
  • 37. Si el arranque de Apache tiene éxito, el panel de control mostrará el nombre del módulo con fondo verde, su identificador de proceso, los puertos abiertos (http y https), el botón "Start" se convertirá en el botón "Stop" y en la zona de notificación se verá el resultado de las operaciones realizadas. Si se abre el programa "Firewall de Windows con seguridad avanzada", en el apartado de Reglas de entrada pueden verse las nuevas reglas añadidas.
  • 38. Para comprobar que todo funciona correctamente, hay que escribir en el navegador la dirección http://localhost. Al abrir la página por primera vez, XAMPP pedirá seleccionar el idioma: Una vez elegido el idioma, se mostrará la página de configuración de XAMPP:
  • 39. PANEL DE CONTROL DE XAMPP Al panel de control de XAMPP se puede acceder mediante el menú de inicio "Todos los programas > XAMPP > XAMPP Control Panel" o, si ya está iniciado, mediante el icono del área de notificación. El panel de control de XAMPP se divide en tres zonas:  la zona de módulos, que indica para cada uno de los módulos de XAMPP: si está instalado como servicio, su nombre, el identificador de proceso, el puerto utilizado e incluye unos botones para iniciar y detener los procesos, administrarlos, editar los archivos de configuración y abrir los archivos de registro de actividad.  la zona de notificación, en la que XAMPP informa del éxito o fracaso de las acciones realizadas  la zona de utilidades, para acceder rápidamente
  • 40. Para cerrar el panel de control de XAMPP hay que hacer clic en el botón Quit: El botón Cerrar en forma de aspa no cierra realmente el panel de control, sólo lo minimiza:
  • 41. Si se ha minimizado el panel de control de XAMPP, se puede volver a mostrar haciendo doble clic en el icono de XAMPP del área de notificación. Haciendo clic derecho en el icono de XAMPP del área de notificación se muestra un menú que permite mostrar u ocultar el panel de control, arrancar o detener servidores o cerrar el panel de control.
  • 42. EDITAR ARCHIVOS DE CONFIGURACIÓN Los dos archivos principales de configuración son los archivos httpd.conf (Apache) y php.ini (PHP). Para editarlos se puede utilizar el panel de control de XAMPP, que los abre directamente en el bloc de notas. Para ello hay que hacer clic en el botón "Config" correspondiente a Apache y hacer clic en el archivo que se quiere editar.
  • 43. INICIAR, DETENER Y REINICIAR SERVIDORES A veces es necesario detener y reiniciar los servidores. Por ejemplo, los archivos de configuración de Apache se cargan al iniciar Apache. Si se modifica un archivo de configuración de Apache (httpd.conf, php.ini u otro) mientras Apache está en marcha, para recargar los archivos de configuración es necesario detener y reiniciar el servidor Apache. Nota: Si al modificar el archivo de configuración hemos introducido errores, el servidor no será capaz de iniciarse. Si no sabemos encontrar el origen del problema, se recomienda restaurar los archivos de configuración originales, de los que se aconseja tener una copia de seguridad. Para poner en funcionamiento Apache (u otro servidor), hay que hacer clic en el botón "Start" correspondiente:
  • 44. Si el arranque de Apache tiene éxito, el panel de control mostrará el nombre del módulo con fondo verde, su identificador de proceso, los puertos abiertos (http y https), el botón "Start" se convertirá en un botón "Stop" y en la zona de notificación se verá el resultado de las operaciones realizadas. Para detener Apache hay que hacer clic en el botón "Stop" correspondiente a Apache.
  • 45. Si la parada de Apache tiene éxito, el panel de control mostrará el nombre del módulo con fondo gris, sin identificador de proceso ni puertos abiertos (http y https), el botón "Stop" se convertirá en un botón "Start" y en la zona de notificación se verá el resultado de las operaciones realizadas. Para reiniciar de nuevo Apache habría que volver a hace clic en el botón "Start" correspondiente a Apache.
  • 46. DESCARGAR E INSTALAR NOD PAD++ Cuando la página haya terminado de cargar, hacemos click en la sección download del menú izquierdo, tal y como se muestra en la siguiente imagen. En la página web que nos aparecerá, descargamos la versión “Installer” actual, por ejemplo Notepad++ v6.9.6.2 Installer.
  • 47. Una vez descargado el archivo, lo ejecutamos para instalarlo en nuestro ordenador haciendo doble click sobre él. El proceso de instalación es muy simple y entraremos a explicarlo con más detalle. Elegimos el lenguaje que queremos en mi caso español y damos click en ok. Continuamos y damos click en siguiente Se acepta todos los términos de acuerdo, se selecciona aceptar para continuar. Se debe aceptar el término de acuerdo para instalar Notepad++.
  • 48. El programa de instalación se instalara Notepad++ en el siguiente directorio. Para instalar en un directorio diferente, presione examinar y seleccione otro directorio, presione siguiente para continuar. Marque los componentes que desee instalar y desmarque los componentes que no desee instalar. Presione siguiente para continuar. Se selecciona las características deseadas de Notepad++ para instalar. Y damos click en instalar.
  • 49. Listo tenemos el Nodpad++ instalado en nuestra pc. Cuando tengamos instalado el programa, ya dispondremos del editor de texto Notepad++, con el que podremos abrir y editar cualquier fichero HTML. Podremos acceder al programa desde Inicio -- > Programas -- > Notepad++ o desde el icono de acceso directo en el escritorio si se ha creado.
  • 50. HISTORIA Y USO DE APACHE El servidor HTTP Apache es un servidor web HTTP de código abierto, para plataformas Unix (BSD, GNU/Linux, etc.), Microsoft Windows, Macintosh y otras, que implementa el protocolo HTTP/1.12 y la noción de sitio virtual. Cuando comenzó su desarrollo en 1995 se basó inicialmente en código del popular NCSA HTTPd 1.3, pero más tarde fue reescrito por completo. Su nombre se debe a que Behelendorf quería que tuviese la connotación de algo que es firme y enérgico pero no agresivo, y la tribu Apache fue la última en rendirse al que pronto se convertiría en gobierno de EEUU, y en esos momentos la preocupación de su grupo era que llegasen las empresas y "civilizasen" el paisaje que habían creado los primeros ingenieros de internet. Además Apache consistía solamente en un conjunto de parches a aplicar al servidor de NCSA. En inglés, a patchy server (un servidor "parcheado") suena igual que Apache Server. El servidor Apache se desarrolla dentro del proyecto HTTP Server (httpd) de la Apache Software Foundation. Apache presenta entre otras características altamente configurables, bases de datos de autenticación y negociado de contenido, pero fue criticado por la falta de una interfaz gráfica que ayude en su configuración. Apache tiene amplia aceptación en la red: desde 1996, Apache, es el servidor HTTP más usado. Alcanzó su máxima cuota de mercado en 2005 siendo el servidor empleado en el 70% de los sitios web en el mundo, sin embargo ha sufrido un descenso en su cuota de mercado en los últimos años. (Estadísticas históricas y de uso diario proporcionadas por Netcraft3 ). La mayoría de las vulnerabilidades de la seguridad descubiertas y resueltas tan sólo pueden ser aprovechadas por usuarios locales y no remotamente. Sin embargo, algunas se pueden accionar remotamente en ciertas situaciones, o explotar por los usuarios locales malévolos en las disposiciones de recibimiento compartidas que utilizan PHP como módulo de Apache.
  • 51. Apache es usado principalmente para enviar páginas web estáticas y dinámicas en la World Wide Web. Muchas aplicaciones web están diseñadas asumiendo como ambiente de implantación a Apache, o que utilizarán características propias de este servidor web. Apache es el componente de servidor web en la popular plataforma de aplicaciones LAMP, junto a MySQL y los lenguajes de programación PHP/Perl/Python (y ahora también Ruby). Este servidor web es redistribuido como parte de varios paquetes propietarios de software, incluyendo la base de datos Oracle y el IBM WebSphere application server. Mac OS X integra apache como parte de su propio servidor web y como soporte de su servidor de aplicaciones WebObjects. Es soportado de alguna manera por Borland en las herramientas de desarrollo Kylix y Delphi. Apache es incluido con Novell NetWare 6.5, donde es el servidor web por defecto, y en muchas distribuciones Linux. Apache es usado para muchas otras tareas donde el contenido necesita ser puesto a disposición en una forma segura y confiable. Un ejemplo es al momento de compartir archivos desde una computadora personal hacia Internet. Un usuario que tiene Apache instalado en su escritorio puede colocar arbitrariamente archivos en la raíz de documentos de Apache, desde donde pueden ser compartidos. Los programadores de aplicaciones web a veces utilizan una versión local de Apache con el fin de previsualizar y probar código mientras éste es desarrollado. Microsoft Internet Information Services (IIS) es el principal competidor de Apache, así como Sun Java System Web Server de Sun Microsystems y un anfitrión de otras aplicaciones como Zeus Web Server. Algunos de los más grandes sitios web del mundo están ejecutándose sobre Apache. La capa frontal (front end) del motor de búsqueda Google está basado en una versión modificada de Apache, denominada Google Web Server (GWS).
  • 53. CONCEPTO DE VARIABLES Una variable de un lenguaje de programación es un elemento que permite almacenar información. En los lenguajes de programación las variables se identifican por su nombre. En PHP el programador puede dar el nombre que quiera a las variables, con algunas restricciones: • Los nombres de las variables tienen que empezar por el carácter $. • A continuación tiene que haber 1 letra (mayúscula o minúscula) o un guión bajo (_). • El resto de caracteres del nombre pueden ser números, letras o guiones bajos. Los nombres de variables pueden contener caracteres no ingleses (vocales acentuadas, eñes (ñ) o cedillas (ç), etc.) pero la costumbre es no utilizarlas. Una variable podría definirse como una posición de memoria creada para introducir o asignar cualquier valor o dato. Durante la ejecución del script el valor de la variable puede "variar"(valga la redundancia) tanto de tipo como de valor. En PHP (al igual que en JavaScript) no hace falta declarar la variable ya que simplemente anteponiendo el carácter $ al nombre de la variable estamos indicando que es una variable. En los nombres de las variables, PHP distingue entre mayúsculas y minúsculas, es decir, si se cambia algún carácter de mayúscula a minúscula o viceversa, para PHP se tratará de variables distintas. Para facilitar la comprensión del programa, se aconseja que los nombres de las variables hagan referencia a la información que contienen. Por ejemplo, si se va a guardar en una variable la edad del usuario, un nombre adecuado de la variable sería por ejemplo $edad. Si el nombre de la variable contiene varias palabras, se aconseja utilizar la notación "camel case", es decir, escribir la primera palabra en minúsculas y la primera letra de las siguientes palabras en mayúsculas. Por ejemplo, si se van a guardar en varias variables las edades del usuario y la de sus padres y abuelos, unos nombres adecuados podrían ser $edadUsuario, $edadPadre, $edadMadre, $edadAbueloPaterno, etc.
  • 54. USAR VARIABLES Las variables en PHP son representadas con un signo de dólar ($) seguido por el nombre de la variable. El nombre de la variable es sensible a minúsculas y mayúsculas. Es decir, las siguientes declaraciones de variables son distintas entre ellas: $variable, $Variable, $variable, $variable, etc. representan a distintas variables. Recordar que una variable es un espacio de la memoria del ordenador (en este caso del servidor) a la que asignamos un contenido que a grandes rasgos puede ser un valor numérico (sólo números, con su valor de cálculo) o alfanumérico (sólo texto o texto con números). Para declarar un nombre de variable válido, éste tiene que empezar con una letra (o si no empieza con una letra, tendrá que hacerlo con un carácter de subrayado), seguido de cualquier número de letras, números y caracteres de subrayado Posible nombre de variable Validez $4variable Nombre de variable inválido. $_4variable Nombre de variable válido. $variable4 Nombre de variable válido. $otra Nombre de variable válido. $1_otra Nombre de variable inválido. $variable_de_nombre_muy_largo Nombre de variable válido. $ A B C Nombre de variable inválido. $A_y_B_x_C Nombre de variable válido.
  • 55. Cuando el intérprete PHP detecta un error en la sintaxis al declarar una variable, cuando tratamos de acceder a la página php nos aparecerá un mensaje de error. Por ejemplo si en un archivo php incluimos una línea como $ A B C = 5; donde el nombre de variable es inválido ya que tiene espacios intermedios, nos aparecerá un mensaje de error: Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE or '$' in /home/miraiz/domains/midominio.com/public_html/prueba.php on line 3. Este mensaje nos informa de que hay un problema en el archivo php y nos indica la línea donde el intérprete considera que está el problema. A continuación vamos a citar ejemplos de variables: IMPRIMIR HOLA MUNDO PRESENTACION EN PANTALLA
  • 56. IMPRIMIR EN PANTALLA UN NOMBRE PRESENTACION EN PANTALLA IMPRIMIR EN PANTALLA MI PRIMER PROGRAMA EN PHP PRESENTACION EN PANTALLA
  • 57. OPERADORES DE ASIGNACIÓN Y DE IGUALDAD ASIGNACIÓN (=) El operador de asignación es "=". Se podría pensar que es como un "igual a". No lo es. El operador igual en programación no tiene el mismo sentido que en matemáticas. En programación, significa que el valor de la expresión de la derecha se establece en el operando de la izquierda. EJEMPLO: PRESENTACION EN PANTALLA IGUALDAD (==) El comparador de igualdad es ==. Como su propio nombre indica, sirve para comparar dos valores o variables y no para asignar valores. Este operador devuelve el resultado de la operación lógica de 'igual a' tal y como podemos apreciar en el siguiente ejemplo.
  • 58. PRESENTACION EN PANTALLA TIPOS DE DATOS En PHP no es necesario indicar el tipo de datos al que pertenece una variable, sino que son asumidos directamente por el intérprete PHP, que es el encargado de interpretar el código. Ahora veremos en una tabla los distintos tipos de datos que se pueden usar en PHP. TIPO DE DATO DEFINICIÓN integer Los integers, o enteros, pueden tener distintos valores numéricos enteros que se expresan con diferentes notaciones. $variable = 18; // Número entero positivo $variable = -18; // Número entero negativo $variable = 0x12; // Notación hexadecimal, es igual a 18 decimales float o double Este tipo de datos son los números de punto flotante a los que normalmente llamamos “números decimales”, por ejemplo, 9.876. La sintaxis para utilizarlos es bastante simple: $variable = 9.876; string El tipo de datos string, también conocido como cadena de caracteres, se expresa con la siguiente sintaxis: $variable = "Yo soy una cadena"; boolean Se trata de un tipo lógico. Sus posibles valores son TRUE o FALSE. $variable = true; $variable = false;
  • 59. INSTRUCCIÓN ECHO Esta instrucción PHP hace que se muestre por pantalla un texto, una variable, o una combinación de texto y variables. Crea un archivo php con el siguiente código, ponle un nombre como usoDeEcho.php y súbelo al servidor. Luego invócalo usando una ruta como http://localhost/ejercicios/usoDeEcho.php. La visualización en tu navegador deberá ser similar a esta. Puede variar ligeramente dependiendo del navegador que uses. Ten en cuenta que $a se muestra por pantalla como 5 porque el intérprete de PHP considera que debe mostrarse siempre el valor de la variable, incluso si va dentro de un texto. Prueba a escribir la siguiente línea: echo " El valor de la variable $a es $a."; Comprobarás que se muestra por pantalla “salida por pantalla. 5 El valor de la variable $a es 5.” Cuando antecedemos un nombre de variable del carácter hacemos que se interprete como texto en lugar de como una variable. El carácter se suele llamar “carácter de escape”.
  • 60. CONCATENACIÓN DE CADENAS DE CARACTERES Las cadenas, como ya sabemos, son un tipo de dato; concretamente una sucesión de caracteres; y que pueden ser número, letras o símbolos. En PHP toda cadena debe ir entre comillas; pudiendo ser comillas simples o comillas dobles según la necesidad lo requiera. En esta lección vamos a conocer las cadenas con un poco más de profundidad. Veremos como operar con ellas de forma básica; y como trabajar con ellas junto con las variables. El resultado que mostrará el navegador será el número es 8; ya que 8 es el valor de la variable que hemos escrito dentro de la cadena. Ahora, si sustituyes las dobles comillas por comillas simples, el resutlado cambia ael número es $número. Cuando escribimos cadenas con comillas simples PHP interpreta que queremos escribir de forma literal, por eso no muestra el valor de la variable. PRESENTACION EN PANTALLA
  • 61. LA CONCATENACIÓN Esta técnica sirve para unir dos o más datos; por ejemplo dos cadenas, o una cadena y una variable. Para concatenar tenemos que hacer uso de un operador, este operador se escribe poniendo un punto. Veamos un ejemplo donde concatenamos dos cadenas a través de variables: l resultado que debe aparecer en el navegador es: esto es una cadena y es otra cadena. Como vez en la sentencia echo, hemos juntado las dos cadenas a través del punto, que es el operador de la concatenación. También hay que darse cuenta que se ha dejado una espacio al principio de la segunda cadena para que, al aparecer las dos concatenadas, se respeten todos los espacios entre palabras. EJEMPLOS
  • 62. PRESENTACIÓN EN PANTALLA CONCATENAR NOMBRE Y FECHA PRESENTACIÓN EN PANTALLA OPERACIONES ARITMETICAS EN PHP Suma, Resta, Multiplicación, División. 1. Suma
  • 63. PRESENTACION EN PANTALLA RESTA PRESENTACION EN PANTALLA MULTIPLICACIÓN
  • 66. CONCEPTO ESTRUCTURAS SELECTIVAS Las estructuras, tanto en PHP como en otros lenguajes de programación, permiten realizar acciones en el programa en las que intervienen una o varias sentencias. Una estructura es un bloque del programa que debe comportarse de una determinada manera, la cual también definimos. La mayoría de las estructuras tienen la siguiente forma: Nombre (forma de comportarse) {sentencias a las que afecta } Nombre es el nombre que tiene el tipo de estructura y es siempre una palabra clave; en forma de comportarse introduciremos los datos necesarios para que la estructura funcione, siempre entre paréntesis; y en sentencias a las que afecta introduciremos las sentencias a las que afecta esta estructura, las cuales se escriben entre corchetes. ESTRUCTURA CONDICIONAL "IF" En una estructura condicional en "(forma de comportarse)" se indica una condición. si ésta se cumple el programa ejecutará las sentencias incluidas entre corchetes, si no es así puede que no haga nada o que ejecute otra acción distinta, dependiendo de lo que se le indique. La estructura condicional más sencilla es la estructura if. Esta es la misma que en el lenguaje Javascript, y tiene la siguiente forma: En ("condición") pondremos una sentencia en la que comprobamos mediante un operador condicional si se cumple o no una cierta condición.
  • 67. Como podemos ver aquí, los operadores condicionales son imprescindibles para definir la condición, podemos usar también operadores lógicos, asociados con los condicionales: El siguiente paso es definir la sentencia o sentencias a que se ejecutarán en el caso de que la condición se cumpla: Podemos dejar la estructura así si queremos que el programa no haga nada cuando la condición no se cumple. Pero si queremos que cuando la condición no se cumple se ejecute un código distinto, añadiremos la palabra else seguida del código entre corchetes: Veamos todo el código anterior ordenado:
  • 68. PRESENTACION EN PANTALLA Fíjate en cómo hemos puesto los tabuladores, y los espacios, aunque en realidad podemos ponerlos con cualquier otra distribución, ésta es la que más se suele usar, ya que permite una mayor claridad para ver el código, y para poder añadir posteriormente más sentencias dentro de cada corchete. Es recomendable seguir unos buenos hábitos desde el principio y acostumbrarnos a escribir el código de las estructuras de esta manera. La sentencia if, es condicional y valida que se cumpla cierto criterio o condición. Este ejemplo imprime en el navegador un texto si se cumple con la condición.
  • 69. PRESENTACION EN PANTALLA SENTENCIA CONDICIONAL – ELSE La sentencia else, es condicional y se usa cuando no se cumple la sentencia if o la sentencia else if. La sentencia condicional "else" se utiliza como extensión de la sentencia "if". Si la condición falla, entonces se ejecuta otra sentencia bajo la condición "else". Este ejemplo imprime en el navegador un texto si se cumple con la condición y si no imprime otro texto.
  • 70. PRESENTACION EN PANTALLA SENTENCIA ELSE-IF La sentencia else-if, es condicional y se coloca después de la sentencia If, ya que si no se cumple el if se ejecuta esta. La sentencia else/ if se utiliza como extensión de la estructura "If", si la condición falla, entonces se ejecuta otra condición "If" para ejecutar el segmento de código en la sentencia"elseif". Este ejemplo imprime en el navegador un texto si se cumple con la condición y si no evalúa otra condición e imprime un texto.
  • 72. SENTENCIAS REPETITIVAS Concepto de bucle.- Un bucle es una estructura que hace que un código determinado pueda repetirse un cierto número de veces. Puede haber algunas variables que cambien de valor en cada repetición, con lo que en cada vuelta del bucle obtendremos un resultado distinto, aunque parecido al anterior. Definir el número de veces que se repite el bucle depende de cada tipo de estructura, aunque lo normal es que haya una variable que cambia con cada repetición. Hay también una condición que debe cumplirse para que el bucle se repita. Por tanto haremos que la condición dependa del valor de la variable, de manera que cuando la variable no tenga el valor indicado, el bucle deja de ejecutarse. SENTENCIA FOR La sentencia for es una sentencia repetitiva, es decir se va a ejecutar las veces que se especifiquen, formando un bucle. Este ciclo es uno de los más usados para repetir una secuencia de instrucciones, sobre todo cuando se conoce la cantidad exacta de veces que se quiere que se ejecute una instrucción simple o compuesta. Su formato general es: for (inicialización; condición; incremento){ instrucción(es); }; Ejemplo: Este ejercicio imprime en el navegador del número 1 al 10.
  • 73. PRESENTACIÓN EN PANTALLA. SENTENCIA WHILE La sentencia while es una sentencia repetitiva, es decir se va a ejecutar las veces que se especifiquen, formando un bucle, así mismo se le da una condición, es decir ejecuta código mientras se cumpla cierta condición.El bucle while es el más sencillo, su sintaxis es la siguiente. Mientras se cumpla la condición el bucle repetirá las sentencias indicadas entre llaves. Lo normal es que dentro de las sentencias a ejecutar haya una variable que controla el bucle, es decir que hace que el bucle se repita. Esta variable debe cambiar en cada repetición, de manera que llegue un momento en que la condición no se cumpla, y podamos salir del bucle. Ejemplo: Este ejercicio imprime en el navegador del número 1 al 10.
  • 74. PRESENTACIÓN EN PANTALLA. SENTENCIA DO-WHILE: La sentencia do-while es una sentencia repetitiva, es decir se va a ejecutar las veces que se especifiquen, formando un bucle, así mismo se le da una condición, es decir ejecuta código y luego evalúa la condición. Como una variante del bucle while está el bucle do while. La diferencia con el bucle while es que aquí las sentencias del bucle se ejecutarán siempre al menos una vez, aunque no se cumpla la condición. Este bucle tiene la siguiente sintaxis: Abrimos el bucle con la palabra clave do para poner a continuación las sentencias entre corchetes, después ponemos la palabra clave while con la condición entre paréntesis. Lo de poner la condición al final del bucle es lo que hace posible que éste se pueda ejecutar siempre al menos una vez. Veamos un ejemplo: Este ejercicio imprime en el navegador del número 1 al 10.
  • 77. COMPONENTES HTML USO Y FUNCIONAMIENTO DEL FORM HTML Un formulario HTML es una sección de un documento que contiene contenido normal, código, elementos especiales llamados controles (casillas de verificación (checkboxes), radiobotones (radio buttons), menúes, etc.), y rótulos (labels) en esos controles. Los usuarios normalmente "completan" un formulario modificando sus controles (introduciendo texto, seleccionando objetos de un menú, etc.), antes de enviar el formulario a un agente para que lo procese (p.ej., a un servidor web, a un servidor de correo, etc.) Aquí se muestra un ejemplo de un formulario simple que incluye rótulos, radiobotones y botones para reinicializar el formulario o para enviarlo: EJEMPLO PRESENTACION EN PANTALLA
  • 78. Excepto las partes de htmlspecialchars() y de (int), debería ser obvio qué es lo que hace el código. htmlspecialchars() se asegura de que cualquier carácter que es especial en html sea codificado adecuadamente, de manera que nadie pueda inyectar etiquetas HTML o Javascript en la página. El campo edad, ya que sabemos que es un número, podemos convertirloa un valor de tipo integer que automáticamente se deshará de cualquier carácter no numérico. También se puede hacer lo mismo con PHP con la extensión filter. Las variables $_POST['nombre'] y $_POST['edad'] son establecidas automáticamente por PHP. Anteriormente hemos usado la superglobal $_SERVER; arriba introdujimos la superglobal$_POST, la cual contiene todos los datos de POST. Observe que el método de nuestro formulario es POST. Si hubiésemos usado el método GET, nuestra información estaría en su lugar en la superglobal $_GET. También se podría usar la superglobal $_REQUEST, si no le preocupa la fuente de los datos solicitados. Contiene toda la información mezclada de los datos de GET, POST y COOKIE. En PHP, también puede tratar con entradas de XForms; aunque probablemente al principio se sienta cómodo con los formularios de HTML, los cuales están ampliamente respaldados. A pesar de que trabajar con XForms no es para principiantes, podrían interesarle. Si es así, en la sección de características hay una pequeña introducción a la manipulación de datos recibidos desde XForms. Los formularios son objetos; tienen sus propios métodos propiedades y manejadores de eventos. Uno de los manejadores de eventos que debería conocer es onSubmit. OnSubmit obtiene todo lo llamado en dos situaciones: si un usuario presiona sobre el botón de submit, o si un usuario presione <return> dentro de un campo de texto. Si estas acciones no son administradas en algún modo, su JavaScript puede comportarse diferente de lo esperado. En la Parte A del ejemplo28_0.html, presione el botón Enviar o si presiona<return> sobre un campo de texto.
  • 79. USO Y FUNCIONAMIENTO DEL TEXT HTML HTML nos permite definir el formato de visualización del texto en la pantalla. Muy útil para cuando queramos resaltar o enfatizar un texto en especial. También muy usado para subrayar o escribir subíndices o superíndices. Estos, son solo algunos ejemplos de lo que podemos hacer con estos elementos. ETIQUETAS PARA DAR FORMA AL TEXTO Etiquetas Descripción <b> Define un texto en negrita <big> Define un texto grande <em> Define un texto enfatizado <i> Define un texto en itálica <small> Define un texto pequeño <strong> Define un texto fuerte <sub> Define un texto subíndice <sup> Define un texto superíndice <ins> Define un texto subrayado <del> Define un texto tachado <tt> Define un texto de teletipo <s> Define un texto tachado. Desaprobado. Use <del> en su lugar <strike> Define un texto tachado. Desaprobado. Use <del> en su lugar <u> Define un texto subrayado. Desaprobado. Use <ins> en su lugar ETIQUETAS DE "TEXTO ESTRUCTURADO" Estas etiquetas son usadas comúnmente para mostrar códigos de programación. Etiquetas Descripción <code> Define un texto en código de computadora <kbd> Define un texto del teclado
  • 80. <samp> Define un texto ejemplo de código de computadora <var> Define una variable <pre> Define un texto preformateado <listing> Desaprobado. Use <pre> en su lugar <plaintext> Desaprobado. Use <pre> en su lugar <xmp> Desaprobado. Use <pre> en su lugar ETIQUETAS DE CITACIONES Y DEFINICIONES Etiquetas Descripción <abbr> Indica una forma abreviada (p.ej., WWW, HTTP, etc.) <acronym> Indica un acrónimo (p.ej., WAC ,radar, autobús, etc.) <address> Define la información sobre el autor <bdo> Define la dirección del texto (p.ej., de izq. a der., de der. a izq.) <blockquote> Designa una cita larga <q> Designa una cita corta <cite> Contiene una cita o una referencia a otras fuentes <dfn> Indica que aquí es donde se define el término encerrado
  • 81. USO Y FUNCIONAMIENTO DEL CHECKBOX. Los "checkboxes" nos permiten seleccionar varias opciones marcando el cuadrito que aparece a su izquierda. El cuadrito pulsado equivale a un "sí" y sin pulsar a un "no" o, lo que es lo mismo, a "true" o "false". Propiedades checked. Valor booleano que nos dice si el checkbox está pulsado o no defaultChecked. Valor booleano que nos dice si el checkbox debe estar seleccionado por defecto o no name. Es una cadena que contiene el valor del parámetro NAME. value. Es una cadena que contiene el valor del parámetro VALUE. type. Especifica el tipo en este caso checkbox. disabled. Permite deshabilitar cada uno de los checkbox. Métodos click(). Realiza la acción de pulsado del botón blur(). Pierde el foco del ratón sobre el objeto especificado. focus(). Obtiene el foco del ratón sobre el objeto especificado. input: para agregar un campo al formulario type=”checkbox”: para especificar que es una casilla de verificación name=”tema[]“: es importante que todas las alternativas tengan el mismo nombre, para luego poder recibir los valores del checkbox en el script php y saber cuáles fueron las opciones tildadas por el usuario. En este caso el nombre es “tema”, los corchetes que aparecen luego son necesarios.
  • 82. EJEMPLOS RECIBIR EN PHP PRESENTACION EN PANTALLA RESULATADO
  • 83. USO Y FUNCIONAMIENTO DEL RADIO BUTTON. Afortunadamente, radio buttons son similares a los checkbox . La única diferencia real está en el HTML. Checkboxes son dispositivos on/off. Si un checkbox está tildado, lo puede desmarcar o viceversa. Radio buttons son diferente. Una vez que un radio button está encendido (on), permanecerá en ese estado hasta que otro sea seleccionado. En ese momento el primero entra en off. EJEMPLO RADIO BUTTON RECIBIR EN PHP PRESENTACION EN PANTALLA
  • 86. USO Y FUNCIONAMIENTO DEL SELECT. Los Selects son los elementos más extraños dentro de los formularios. Existen dos clases primarias, menús y listas. FORMULARIO RECIBIR EN PHP PRESENTACION EN PANTALLA
  • 87. RESULTADO Esto funciona debido a que los elementos select tienen las propiedades de las opciones en un arreglo. Puede buscar una de las opciones en el arreglo y modificar su propiedad. Trate de hacer esto y luego busque en el menú para ver que realmente haya cambiado. Cuando se elige una opción en el select, la propiedad selectedIndex será el valor del arreglo de la opción seleccionada. Para verificar esto elija una de las opciones de la lista. Recuerde que las opciones comienzan desde el valor cero. Como cualquier otro elemento, el elemento select tiene un manejador: onChange(). Éste es llamado cada vez que se produce un cambio en el select. Establecer el foco a un determinado elemento Es cómodo cuando uno ingresa a una página, que el primero elemento quede en foco, sin la necesidad de tener que ponerlo en foco por medio del mouse. Como ocurre cuando uno ingresa a Google, el texto automáticamente queda en foco.
  • 88. USO Y FUNCIONAMIENTO DEL IMG. El uso de imágenes es uno de los factores que ha popularizado tanto World Wide Web. Incluir imágenes en una presentación web es muy sencillo, solo debe de tener en cuenta que las imágenes tienen que tener los formatos GIF, JPEG o PNG. Las imágenes en línea, se especifican a partir de la tag <img>que no tiene una tag correspondiente de cierre pero que puede acompañarse de los siguientes atributos: src= Este atributo es obligatorio e indica el nombre del archivo de imagen (entre comillas) o la URL que se va a representar. Align= Permite controlar la alineación de una imagen con respecto a una línea de texto adyacente o a otras imágenes en esa línea. Los tres valores posibles son los ya conocidos left, right, top, middle ybottom. Alt = Es la alternativa que se estableció cuando todavía existían visualizadores de solo texto. Entre comillas podremos escribir un texto que suplantara a esta imagen si no se carga o mientras se carga o cuando, visualizando ya la imagen, pasamos el ratón por encima. WIDTH= Este atributo es opcional pero es recomendable ponerlo para ayudar al navegador a representar la imagen, significa el ancho de la imagen que vamos a representar. HEIGHT=Al igual que el atributo WIDTH, es opcional y recomendable ponerlo, este significa el alto de la imagen. BORDER= Con BORDER especificamos el ancho de un borde que rodea la imagen. EJEMPLO FORMULARIO
  • 90. El "texto alternativo" se denomina así porque supone una verdadera alternativa al gráfico. Hay que tener en cuenta la posibilidad de que el navegador que visite nuestra página tenga desactivada la opción de "ver imágenes" (¡o incluso un error en el enlace por nuestra parte!), en cuyo caso sólo aparecería dicho texto. En condiciones "normales", el texto alternativo posee la función de un pie de foto, puesto que aparece al posar el cursor sobre la imagen. El tamaño de la imagen puede modificarse, efectivamente, con <IMG width="¿?" height="¿?">, Pero hay que tener en cuenta que los valores que señalemos aquí no alteren las proporciones de la imagen original. En cualquier caso, como norma general, es mejor efectuar todos los ajustes necesarios en un programa de edición gráfica (Paint Shop Pro, Photoshop, etc.). Los ajustes de <IMG align> pueden referise a la línea de texto o al párrafo: Una imagen pequeña (como un icono) puede presentarse dentro de una línea de texto. En este caso, puede alinearse justo sobre la línea del texto (<IMG align="top">), debajo (<IMG align="bottom">) o en el medio (<IMG align="middle">). Una imagen puede colocarse dentro de un párrafo, de modo que el texto se presente a la izquierda (<IMG align="right">) o a la derecha (<IMG align="left">) de la imagen.
  • 91. USO Y FUNCIONAMIENTO DEL TEXTAREA. El elemento HTML textarea inserta un control de entrada de texto multilínea en un documento o formulario. A diferencia del elemento HTML input, con el atributo "type" establecido a "text", este control puede aceptar más de una línea de texto como entrada. Esta característica especial, hace de este elemento una buena elección a la hora de requerir comentarios o mensajes. Este elemento está destinado a recolectar información provista por el usuario. Una vez llenado, el contenido de este control puede ser enviado por el mismo y luego recibido por el agente procesador, quien manejará la información como sea requerido. Nota que el contenido de este control representa el valor inicial del control. EJEMPLOS CÓDIGO VISTA MENSAJE: LUIS CALEROROMERO PORTAFOLIODEOPTATIVA ING. HECTORMENAJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ ATRIBUTOS id (name).- El atributo "id" asigna un identificador al elemento asociado. Este identificador debe ser único en todo el documento y puede ser usado para referirse a este elemento en otras instancias (por ejemplo, desde un script del lado cliente).
  • 92. STYLE (STYLE) Este atributo es utilizado para definir atributos presentacionales para el elemento contenedor, y su valor debería estar compuesto por propiedades de hojas de estilo. Aunque en algunos casos es particularmente útil, es una mejor práctica poner los atributos presentacionales en archivos externos, relacionándolos a los elementos a través del atributo "class". De este modos, se mejora la separación de las partes semántica y presentacional de tu documento. Al escribir documentos XHTML 1.0, el atributo usado para especificar el lenguaje de un elemento es "xml:lang". Para compatibilidad con los dos tipos de estándar ambos atributos pueden ser usados simultáneamente como en el ejemplo a continuación. Nota que en XHTML 1.1, el atributo "lang" ha sido completamente reemplazado por "xml:lang" y su uso ya no es válido. PRESENTACION EN PANTALLA Este atributo indica la dirección en que el texto del elemento debe ser leído. Esto incluye al contenido, los valores de los atributos y las tablas. Tiene dos valores posibles que son insensibles a mayúsculas/minúsculas: Cuando este atributo booleano está presente, los usuarios están imposibilitados para cambiar el control del contenido. Sin embargo, los controles "readonly" pueden recibir el enfoque y son enviados con el formulario.
  • 93. Recuerda que en HTML, los atributos booleanos debe tomar su propio nombre como valor (por ejemplo, nombreatributo="nombreatributo"). CÓDIGO Los comentarios no pueden ser editados en esta etapa!</textarea> VISTA Como con el atributo "readonly", los usuarios no podrán cambiar el contenido del control cuando este atributo esté presente. Además, el control no podrá recibir el enfoque y su información no será enviada con el formulario. Los navegadores habitualmente muestran los controles visuales de manera diferente, como si fueran semitransparentes, con una combinación de colores grises. Recuerda que en HTML, los atributos booleanos debe tomar su propio nombre como valor (por ejemplo, nombreatributo="nombreatributo"). CÓDIGO Los comentarios no pueden ser editados en esta etapa!</textarea>
  • 94. VISTA LUIS CALERO ROMERO TABINDEX (NUMBER) Especifica la posición de este elemento en el orden de tabulación. El orden de tabulación define una secuencia con todos los elementos que pueden recibir el enfoque. Los usuarios pueden navegar esta secuencia mediante el teclado (usualmente con la tecla "tab"). PRESENTACION EN PANTALLA ACCESSKEY (CHARACTER) Relaciona al elemento con una tecla. La mayoría de los navegadores permite acceder al elemento presionando dicha tecla mientras se mantiene presionada la tecla "alt". El resultado de la activacióndepende de la naturaleza del elemento. Para vínculos, esta acción automáticamente sigue el vínculo, mientras que otros elementos simplemente reciben el enfoque.
  • 96. USO Y FUNCIONAMIENTO DEL CAMPO OCULTO. Los campos ocultos son un tipo de control que únicamente sirve para incluir información adicional entre los datos del formulario. Este tipo de control es invisible, y por tanto el navegador no muestra ningún tipo de gráfico para advertir de su existencia. ¿Para qué sirve entonces un control oculto?. Si no aparece en la página y el navegante no puede hacer nada con él ¿Cuál es su función?. En general, los campos ocultos se usan para enviar información específica al programa del servidor Web que procesará los datos enviados, por ejemplo si este programa es capaz de realizar varias funciones distintas con estos datos, podemos usar un campo oculto para pasarle la información de que debe hacer con los datos de este formulario concreto (debemos tener en cuenta que este mismo programa puede procesar la información de otros formularios también). Aun así esta problemática queda fuera de lo que pretendemos abarcar en esta sección dedicada al lenguaje HTML. Los campos ocultos se crean usando la etiqueta INPUT con TYPE="hidden". Además debemos usar los atributos VALUE y NAME, para indicar los datos y su nombre: EJEMPLO: RECIBIR ARCHIVO. PHP
  • 98. USO Y FUNCIONAMIENTO DEL PASSWORD. Este control actúa exactamente como el de entrada de línea con la excepción de que "esconde" los caracteres ingresados mostrándolos como puntos o asteriscos para evitar que los usuarios ven su contenido. Es definido utilizando el valor "pass" en el atributo "type", y su valor inicial puede ser definido usando el atributo "value". Es comúnmente usado para el ingreso de contraseñas. VISTA EN PANTALLA El valor pasado al agente procesador será el texto ingresado por el usuario, es decir, el contenido de la caja de texto.
  • 99. USO Y FUNCIONAMIENTO DE TABLAS. Las tablas se usan con profusión en las páginas Web, muchas veces debido a que son el único instrumento con el que se cuenta, para asegurarse que las cosas estarán en su sitio. Para definir una tabla se usan las etiquetas: La tabla se va definiendo declarando una fila y a continuación las celdas que contiene esa fila, luego otra fila y sus celadas, etc. No es necesario que todas las filas contengan el mismo número de celdas. La tabla (2x2) más sencilla que podemos hacer es la siguiente PRESENTACION EN PANTALLA El resultado no es muy brillante, pero vamos a ir viendo las distintas posibilidades que tenemos para mejorarlo. Atributos de la etiqueta TABLE
  • 100. Todos los atributos son opcionales BORDER="4". Indica el tamaño del borde en píxels, en este caso 4. Si no se indica nada carece de borde WIDTH="5" o WIDTH="50%". Es el ancho de la tabla, puede especificarse en valor absoluto (5 píxeles) o como un porcentaje (50% del ancho disponible) CELLSPACING="2". Es el espacio entre las celdas, por defecto es 2 CELLPADDING="5". Es el espacio entre el contenido de las celdas y el borde de las mismas, por defecto es 1 ALIGN=" left", "right", "center". Alinea la tabla a la izquierda , derecha o en el centro. EJEMPLO PRESENTACIÓN DE TABLA Atributos de las etiquetas de fila y celda
  • 101. Las etiquetas que soportan las filas y las celdas son. WIDTH="30". Ancho de toda la fila o celda. También se puede dar en % ALIGN=" left", "right", "center". Alinea el contenido a la izquierda, derecha o centro VALIGN="top" , "middle" o "bottom". Alinea el contenido verticalmente arriba, en medio o abajo BGCOLOR="#AACCEE". Pone un fondo del color especificado a la celda o fila COLSPAN=3. Especifica el número de columnas que abarca la fila ROWSPAN=2. Especifica el número de filas que abarca la columna EJEMPLO. PRESENTACION DE TABLA EN PANTALLA
  • 103. VECTORES ARRAYS BÁSICOS O TRADICIONALES EN PHP Un array es un conjunto de variables de una misma clase. Se accede a cada elemento individual del array mediante un número entero denominado índice. 0 es el índice o localizador del primer elemento y n-1 es el índice del último elemento, siendo n, la dimensión del array. Así $empleado [23] representaría al empleado con localizador 23 como veremos a continuación. Los arrays son muy utilizados en la programación. Dependiendo de la cantidad de dimensiones que tengan pueden ser:  De una dimensión (vectores). Por ejemplo $empleado[23]  De dos dimensiones (matrices). Por ejemplo $butaca[3, 14]  De tres o más dimensiones (multidimensionales). Por ejemplo $fecha[2012, 9, 22] Para acceder a los elementos del array se utilizan los corchetes [], dentro de los cuales existirá un localizador o índice que es un número entero. Además, podemos guardar valores de cualquier tipo de variable (string, entero, punto flotante, booleano) dentro de un array. Por ejemplo $empleado [23] podría tomar como valor $empleado [23] = “Juan Pérez Suárez”. En este caso se trataría de un array de cadenas de texto, es decir, un array de string. En otro caso $empleado [23] podría tomar como valor $empleado [23] = 2312. En este caso se trataría de un array de valores numéricos. En algunos lenguajes es necesario declarar los arrays antes de poder utilizarlos, pero en PHP no es necesario. Cuando se definen elementos de un array, PHP reconoce automáticamente que se trata de un array sin necesidad de declaración previa.
  • 104. Se define a un arreglo como un grupo de elementos relacionados entre sí por medio de índices. Los arreglos pueden ser de una o más dimensiones, los de una dimensión, son llamados comúnmente "vectores". VECTORES (ARRAYS DE UNA DIMENSIÓN) Los vectores son los arrays que sólo contienen una dimensión. Escribe ahora este código y guárdalo con un nombre de archivo como ejemplo1.php. A continuación, sube el fichero al servidor y visualiza el resultado. EJEMPLOS PRESENTACION EN PANTALLA La forma general de uso de un array es: $nombreDeVariableArray [localizador] = valorAsignado; Ten en cuenta que lo que diferencia a una variable que pertenece a un array (conjunto de variables) es la presencia del corchete con un índice en su interior.
  • 105. PHP admite también otra posibilidad que no admiten otros lenguajes: se pueden usar arrays sin especificar los números de los índices, ya que PHP los puede colocar automáticamente. PRESENTACION EN PANTALLA Fíjate que PHP ha colocado automáticamente los índices, asignando el 0 a Sevilla, el 1 a Madrid, el 2 a Barcelona y el 3 a Valencia. Hay que recordar que los arrays siempre comienzan numerándose desde cero.
  • 106. Otra forma de asignar valores a un array vector es la siguiente: PRESENTACION EN PANTALLA Como ves, esta es una forma abreviada cuya forma general es: $nombreDelArray = array (valorElemento0, valorElemento1, valorElemento2,…, valorElemento3) El término array es una palabra clave en PHP cuyo significado es equivalente a decir “los elementos que aparecen en la lista a continuación son elementos de un array”. Un vector, en lenguajes de programación, no es lo mismo que un vector en matemáticas. Un vector (o array) en php es un conjunto de datos. Se declara como el resto de variables, pero al final de la variable lleva dos corchetes ([ ]) donde se indica la posición del vector a la que acceder. Hay algunas funciones relacionadas con los vectores:
  • 107.  Array ("elemento1","elemento2"). Como ya hemos visto, sirve para añadir elementos a un vector.  Reset ($vector). Sirve para poner el puntero al inicio del vector. El puntero es el que contiene la información sobre la siguiente posición del vector a la que corresponde acceder.  Key ($vector). Contiene la posición actual del puntero del vector.  Next ($vector). Avanza la posición del vector al siguiente elemento. En caso de no haber más elementos, devuelve false.  Count ($vector). Devuelve el número de elementos de un vector. En un vector ordenado, estas funciones no son necesarias, pero en un vector desordenado, o por ejemplo, en un vector como el último caso, donde las posiciones no vienen dadas por números, si no por nombres, necesitamos utilizar esas funciones. Al igual que existe la función reset y next, también existe la función end, que mueve el puntero a la última posición del vector, y la función prev, que lleva el puntero a la posición anterior a la actual. Otra forma de recorrer los vectores, es mediante los comandos list y each. Veamos su uso:
  • 108. PRESENTACION EN PANTALLA Esta vez, hemos usado una única expresión: list($i,$valor)=each($lugar). El comando list recibe dos variables, una para el contador del puntero del vector y otra que contiene el valor del vector en cada una de las posiciones de este. Es decir, en $i se guarda la posición actual del vector, y en $valor se guarda el contenido de la posición $i del vector, que se lo hemos pasado a la función each, en este caso $lugar. La función completa, de forma genérica, sería list($posicion_vector,$valor_vector)=each($vector). La expresión $valor, dentro del bucle, se puede sustituir por $lugar[$i], aunque no es más práctico hacerlo así. Para empezar con los vectores, recomiendo utilizar y practicar el primer método mencionado en esta entrada. Es el más simple y el que menos conocimientos requiere. Los últimos métodos, que incluyen algunas funciones, son más para cuando los vectores no están ordenados, en cuyo caso el último método parece el más sencillo. Se define a un arreglo como un grupo de elementos relacionados entre sí por medio de índices. Los arreglos pueden ser de una o más dimensiones, los de una dimensión, son llamados comúnmente "vectores". A diferencia con el lenguaje C, en PHP, un vector puede tener elementos de distintos tipos. Para hacer referencia a un elemento del vector, se utiliza un índice, que indica la dirección en donde se encuentra un determinado valor. El índice en un arreglo comienza siempre por cero. ( Más adelante se verá que el índice de un vector, no necesariamente debe ser un número entero, sino que también puede ser un texto).
  • 109. EJEMPLO: Almacenar los nombres de los días de la semana en un vector y luego imprimirlos uno debajo de otro. PPRESENTACION EN PANTALLA Un vector, en PHP, puede contener elementos de distintos tipos de datos, es decir, un elemento puede ser un número entero, otro una cadena, otro un número con decimales, etc. Un modelo de este caso se puede observar en el siguiente ejemplo.
  • 110. EJEMPLO: Almacenar en un vector los datos personales de un empleado y luego mostrarlos en pantalla. PPRESENTACION EN PANTALLA
  • 111. EJEMPLO: Cargar en un vector artículos de librería y luego imprimir la cantidad de ellos. PRESENTACION EN PANTALLA Un vector en PHP puede tener elementos en cualquier posición, por lo tanto, se puede cargar un vector con posiciones no consecutivas, sino en forma totalmente aleatoria. Para poder recorrer este tipo de vectores se utilizan las funciones next() y prev().
  • 112. EJEMPLO: Cargar los nombres de personas en cualquier posición. PRESENTACIÓN EN PANTALLA Aquí se observa que los nombres fueron cargados en posiciones aleatorias. Con la función reset (), se logra llevar el puntero al principio del vector y para poder encontrar la posición de un elemento se utiliza la función key(), la cual acepta como parámetro el vector y devuelve la posición. Luego para poder obtener el contenido en esa posición se utiliza la función current (), que acepta el vector y devuelve el valor almacenado. La función next () avanza el puntero a la posición siguiente, si se ha llegado al final del vector, esta función devuelve false.
  • 113. INCLUSIÓN DE CÓDIGO DESDE UN FICHERO En ocasiones es necesario cargar el mismo archivo en diferentes scripts y de esa forma no repetir el mismo código en diversos scripts. Parece entonces razonable que debe existir algún método o forma de cargar algún archivo externo y de esa forma generar páginas web más dinámicas. A este efecto PHP dispone de dos instrucciones para poder cargar archivos: require("archivo"); Cuando se incluye un archivo con require el intérprete abandona el modo PHP y entra en modo HTML, una vez abierto el fichero lo incluye hasta su última línea y posteriormente abandona el modo HTML para volver a posicionarse en el modo PHP. Su principal diferencia con include () es que no permite la carga condicional. include("archivo"); Cuando se incluye un archivo con require el intérprete abandona el modo PHP y entra en modo HTML, una vez abierto el fichero lo incluye hasta su última línea y posteriormente abandona el modo HTML para volver a posicionarse en el modo PHP. Permite la carga condicional, es decir, que podemos cargar un archivo o otro según si se cumple o no una condición.
  • 115. INTRODUCCION A FUNCIONES Las funciones son una parte muy importante en cualquier lenguaje de programación y PHP no es una excepción a ello, ni mucho menos! Definimos primero qué es una función: una función es como una pieza independiente del programa, una „entidad‟ de código que está diseñada, mejor dicho, programada para realizar una determinada acción, como por ejemplo, devolvernos la fecha del sistema. No es necesario que conozcamos „sus tripas‟, el código que la conforma. Simplemente debemos saber para qué sirve y cómo llamarla. En posts anteriores de Aprendiendo PHP ya hemos visto y utilizado algunas de ellas, como la función que he comentado en el párrafo anterior, la que nos devuelve la fecha y la hora de nuestro sistema: la función date(). Una función puede o no devolver un resultado, operando sobre unos valores, a los cuales denominamos argumentos o parámetros. Se construye con una palabra reservada del lenguaje seguida de paréntesis, los cuales pueden ir vacíos o con una enumeración de argumentos o parámetros, separados por comas. Posteriormente esos argumentos pueden sustituirse por los valores que queramos, siempre y cuando sean del mismo tipo de datos. Por cierto, nos queda pendiente el tema sobre el cambio de tipo de datos, lo sé… PHP dispone de un buen número de funciones propias del lenguaje, pero además podemos crear las nuestras propias. Esto último lo veremos bastante más adelante. Primero, la base. De todas formas, conviene que le eches un vistazo al listado de todas sus funciones en su página oficial de PHP: funciones en PHP. Comentaros también que una función puede que sólo efectúe una operación, como la obtención de la suma de dos números que ya hemos visto. El resultado podremos imprimirlo en pantalla -con el constructor del lenguaje echo o print que también hemos utilizado mucho o guardar el resultado en una variable para utilizarlo más adelante, tal vez en otra función. Ahora vamos a ver todo esto que hemos explicado con un ejemplo de una función que calcula la raíz cuadrada de un número, el cual se lo pasamos a la función como un parámetro, siempre entre paréntesis. La función nos devolverá un resultado (a la variable la hemos llamado también $resultado) a través de la palabra reservada return. Luego, para mostrar en pantalla el
  • 116. resultado, creamos otra variable denominada $raiz_cuadrada a la cual asignamos la función con un valor de nuestra elección, un argumento. CONCEPTO DE FUNCIÓN Una función es un grupo de instrucciones que realiza una tarea, estas instrucciones están agrupadas en un mismo bloque, el cual puede ser llamado desde cualquier parte del código. Esto hace que no tengamos que repetir un cierto código cada vez que queramos realizar la misma tarea, ya que basta con hacer una llamada a la función y esta se ejecuta. Hay dos tipos de funciones, las que podemos crear nosotros mismos y las predefinidas. PHP dispone de muchas funciones ya predefinidas, es decir, tareas que son habituales en programación, y para las cuales hay ya una función prefabricada, en este caso lo único que tenemos que hacer es llamar a la función para que esta se ejecute. Esto lo hemos visto ya en páginas anteriores, hemos visto funciones predefinidas para ordenar arrays, o para crear ficheros, o para otra serie de tareas. La forma de llamar a una función predefinida, tal como hemos hecho en las páginas anteriores, es escribiendo su nombre y luego un paréntesis. El paréntesis puede llevar o no argumentos o parámetros, es decir, una serie de datos que hay que pasarle a la función, necesarios para obtener un resultado. Una de las herramientas más importantes en cualquier lenguaje de programación son las funciones. Una función consiste en un conjunto de rutinas y acciones que a lo largo del script van a ser ejecutadas multitud de veces agrupados en una FUNCION y desde cualquier punto del script puede ser llamada y ejecutada. A su vez, esta función puede recibir parámetros externos de los cuales dependa el resultado de una función. Las funciones deben ser colocadas siempre antes de realizar la llamada a la función (como es lógico). La sintaxis de una función es la siguiente:
  • 117. function nombre(parámetros){ instrucciones de la función } para llamar a la función sería de la siguiente forma: nombre(parámetros). Crearemos una función que realice la suma de dos números y muestre el resultado PRESENTACION EN PANTALLA Un hecho relevante que cabe destacar es que las variables que declaremos dentro de la función solo existirán o tendrán dicho valor dentro de la función. Existen casos en los cuales no sabemos el número de parámetros que le pasaremos a la función y en estos casos debemos usar las funciones creadas al efecto como son: func_num_args() Numero de parámetros que se le han pasado a la función func_get_args() Devuelve un elemento de los que forman la lista de argumentos
  • 118. INTRODUCCION A CLASES A partir de PHP 5, el modelo de objetos ha sido reescrito para permitir un mejor rendimiento y con más características. Este fue un cambio importante a partir de PHP 4. PHP 5 tiene un modelo de objetos completo. Entre las características de PHP 5 están la inclusión de la visibilidad, las clases abstractas y clases y métodos finales, métodos mágicos adicionales, interfaces, clonación y tipos sugeridos. PHP trata los objetos de la misma manera como referencias o manejadores, lo que significa que cada variable contiene una referencia de objeto en lugar de una copia de todo el objeto. DECLARACIÓN Y USOS DE CLASES La programación orientada a objetos se basa en la programación de clases; a diferencia de la programación estructurada, que está centrada en las funciones. Una clase es un molde del que luego se pueden crear múltiples objetos, con similares características. Un poco más abajo se define una clase Persona y luego se crean dos objetos de dicha clase. Una clase es una plantilla (molde), que define atributos (lo que conocemos como variables) y métodos (lo que conocemos como funciones). La clase define los atributos y métodos comunes a los objetos de ese tipo, pero luego, cada objeto tendrá sus propios valores y compartirán las mismas funciones. Debemos crear una clase antes de poder crear objetos (instancias) de esa clase. Al crear un objeto de una clase, se dice que se crea una instancia de la clase o un objeto propiamente dicho.
  • 119. Confeccionaremos nuestra primera clase para conocer la sintaxis en el lenguaje PHP, luego definiremos dos objetos de dicha clase. Implementaremos una clase llamada Persona que tendrá como atributo (variable) su nombre y dos métodos (funciones), uno de dichos métodos inicializará el atributo nombre y el siguiente método mostrará en la página el contenido del mismo. EJEMPLOS
  • 120. PRESENTACION EN PANTALLA La sintaxis básica para declarar una clase es: Siempre conviene buscar un nombre de clase lo más próximo a lo que representa. La palabra clave para declarar la clase es class, seguidamente el nombre de la clase y luego encerramos entre llaves de apertura y cerrado todos sus atributos(variable) y métodos(funciones). Nuestra clase Persona queda definida entonces: