1 Escuela Académica Profesional de Ingeniería de Sistemas Ing. Sanchez Castillo Eddye Arturo [email protected] [email protected]
2 Escuela Académica Profesional de Ingeniería de Sistemas Introducción a PHP Sentencias Condicionales Tablas Funciones Include() y require() Manejo de funciones de Tiempo y fecha. Proyecto Aprendizaje Servicio: Implementación de un portal web Fase Inicial. Implementación de un portal web Fase Inicial.
3 Escuela Académica Profesional de Ingeniería de Sistemas PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. PHP es un acrónimo recursivo, que significa “Hypertext Preprocessor”. PHP es un lenguaje de alto nivel que va embebido (insertado) en páginas HTML. PHP es un lenguaje del lado del servidor, lo cual significa que el usuario abre la página HTML y hace una petición de interactuar, PHP, instalado en el servidor web, interpreta la petición y envía una respuesta al usuario, lo cual hace la diferencia entre PHP y javascript, que es un lenguajes del lado del usuario.
4 Escuela Académica Profesional de Ingeniería de Sistemas PHP fue concebido en 1994 por Rasmus Lerdorf, cuyo uso fue personal por esos tiempos, para controlar la cantidad de personas que consultaban su hoja de vida, es decir, su "decubrimiento" fue accidental (¿qué les parece?, como la penicilina). PHP es un lenguaje de código abierto, lo cual implica que, por un lado, hay un grupo de desarrolladores que contribuyen a la elaboración y fortalecimiento del lenguaje; y, en segundo lugar, que es un lenguaje por el que no necesitamos pagar derechos de autor (licencia) para utilizarlo.
5 Escuela Académica Profesional de Ingeniería de Sistemas
6 Lo que se puede hacer con PHP es básicamente: Trabajar con formularios, como su procesamiento y manejo dinámico Generar páginas con contenido dinámico (interactuar con el usuario) Mandar o recibir cookies Trabajar con una gran cantidad de Base de Datos, lo cual lo hace un programa verdaderamente potente. Si lo juntamos con MYSQL, nuestros recursos salen literalmente “GRATIS”.
7 Escuela Académica Profesional de Ingeniería de Sistemas Es importante tener instalado 3 programas que darán inicio para el diseño y uso de las páginas Web dinámicas: PROGRAMA PHP PHP es un lenguaje de programación usado normalmente para la creación de paginas Web dinámicas. APACHE El servidor HTTP Apache es un software libre para plataformas Unix, Windows, Macintosh y otras. MySQL Es un sistema de Gestión de Base de Datos relacional multiusuario, es un software libre.
8 Escuela Académica Profesional de Ingeniería de Sistemas Hoy en día existen varios programas que se pueden bajar gratuitamente desde Internet, pero 2 son mas utilizados: 1.AppServ: Appserv es una herramienta OpenSource para Windows que facilita la instalación de Apache, MySQL y PHP en la cual estas aplicaciones se configuran en forma automática. Como extra incorpora phpMyAdmin para el manejo de MySQL. https://www.appservnetwork.com/en/download/ 2.XAMPP: XAMPP es un servidor independiente de plataforma, software libre, que consiste principalmente en la base de datos MySQL, el servidor web Apache y los intérpretes para lenguajes de script: PHP y Perl. El nombre proviene del acrónimo de X (para cualquiera de los diferentes sistemas operativos), Apache, MySQL, PHP, Perl. https://www.apachefriends.org/es/index.html
9 Escuela Académica Profesional de Ingeniería de Sistemas Todo programa en PHP tiene una estructura con etiquetas que indican su inicio y final dentro de las cuales se escriben las instrucciones. Las Estructuras pueden ser las siguientes: Estas estructuras se utilizan cuando deseamos escribir puro código PHP o cuando deben ir dentro de un documento HTML. { "@context": "http://schema.org", "@type": "ImageObject", "contentUrl": "http://images.slideplayer.es/37/10695773/slides/slide_9.jpg", "name": "Escuela Académica Profesional de Ingeniería de Sistemas Todo programa en PHP tiene una estructura con etiquetas que indican su inicio y final dentro de las cuales se escriben las instrucciones.", "description": "Las Estructuras pueden ser las siguientes: < php Instrucciones PHP > < script language= php Instrucciones PHP /script> Estas estructuras se utilizan cuando deseamos escribir puro código PHP o cuando deben ir dentro de un documento HTML..", "width": "800" } 10 RECOMENDACIONES: 1.PHP esta bastante familiarizada con el lenguaje de Hipertextos HTML por tal motivo, los códigos PHP se encuentran embebidos (insertados) dentro de los documentos HTML. 2.Para diferenciar ambos lenguajes dentro del mismo documento, las etiquetas que representan al lenguaje HTML se escribirán en Mayúsculas y los códigos que representan a PHP en minúsculas. 3.Las extensiones delos ficheros que utilizan en PHP son importantes, debido a que el servidor Web va a tomar una decisión si el documento solicitado debe ser procesado por el interprete de PHP o no. 4.Por lo tanto cuando guarde un fichero asígnele la extensión php. Nombredefihero.php Escuela Académica Profesional de Ingeniería de Sistemas
11 Se utiliza cuando deseamos mostrar un mensaje, el contenido de una variable o de una constante. Para mostrar mensajes se utiliza la siguiente sintaxis: Echo “Mensaje”; Hola a Todos, Bienvenidos a PHP El Resultado será: El Resultado será: Escuela Académica Profesional de Ingeniería de Sistemas
12 Si necesitamos ordenar un salto de línea se puede concatenar al texto la etiqueta HTML o. El operador de concatenación de PHP es un punto (.) Hola a Todos, Bienvenidos a PHP El Resultado será: El Resultado será: Escuela Académica Profesional de Ingeniería de Sistemas
13 Son textos explicativos que se pueden escribir dentro de un programa. Los comentarios no cambian en absoluto los resultados del programa, pero nos dan una idea clara de lo que cada una de las líneas de código que nuestro programas hace. Comentarios de una sola línea: //Esto es un comentario de una línea #Esto también es un comentario de una línea Comentario con varias líneas de texto. /* Esto es un comentario y se utiliza cuando queremos escribir en varias líneas de texto */ Escuela Académica Profesional de Ingeniería de Sistemas
14 Antes de ejecutar un programa, grabe el documento PHP dentro de la carpeta C:\AppServ\www que es localhost. También puede grabarlo dentro de una carpeta, pero antes tendrá que crearlo dentro de localhost. C:\AppServ\www\practicas Desarrollemos una practica de PHP que se muestra a continuación. 1.Crear una carpeta llamada “practicas” dentro de www. 2.Desarrollar el siguiente programa y guardarlo con el nombre de “practica01.php”. 3.Ejecutarlo desde IE escribiendo la dirección siguiente: http://localhost/practicas/practica01.php Escuela Académica Profesional de Ingeniería de Sistemas
15
16
17
18
19
20 Podemos guardar temporalmente los tipos de datos en la memoria de la computadora. Una variable PHP tiene las siguientes características: 1.Debe empezar con el signo dólar ( $ ) 2.El siguiente carácter después del signo $ debe ser un guion bajo o una letra y después cualquier otro carácter. 3.No es necesario declarar o definir las variables 4.Las mayúsculas y minúsculas son diferentes para PHP Escuela Académica Profesional de Ingeniería de Sistemas
21 Por otro lado, hay ciertas reglas que seguir a la hora de darle nombre a las variables. Dichas reglas son: Todas las variables deben comenzar con el signo de dólar ($). Las variables NO pueden comenzar (después del signo de dólar claro está) con números, así: $123, $0, no son nombre válidos Escuela Académica Profesional de Ingeniería de Sistemas
22 Las variables NO pueden comenzar o contener en su nombre símbolos especiales como ?, &, %, #, @, !, *, (, ),. Por consiguiente, las variables $%porcentaje, $$precio, $#_de_telefono, no son válidas en lo absoluto Las variables no pueden llevar tildes o eñes en su contenido, es decir que: $niño, $pasión, no son nombre válidos en PHP Escuela Académica Profesional de Ingeniería de Sistemas
23 Las variables no pueden llevar tildes o eñes en su contenido, es decir que: $niño, $pasión, no son nombre válidos en PHP Las variables SI pueden comenzar con el guión bajo ( _ ), de manera que las variables $_nombre, $_GET, $_123 son totalmente válidas y pueden ser utilizadas sin ningún problema en segmentos de código PHP. Escuela Académica Profesional de Ingeniería de Sistemas
24 Por otro lado, hay ciertas reglas que seguir a la hora de darle nombre a las variables. Dichas reglas son: Todas las variables deben comenzar con el signo de dólar ($). Las variables NO pueden comenzar (después del signo de dólar claro está) con números, así: $123, $0, no son nombre válidos Las variables NO pueden comenzar o contener en su nombre símbolos especiales como ?, &, %, #, @, !, *, (, ),. Por consiguiente, las variables $%porcentaje, $$precio, $#_de_telefono, no son válidas en lo absoluto Las variables no pueden llevar tildes o eñes en su contenido, es decir que: $niño, $pasión, no son nombre válidos en PHP Las variables SI pueden comenzar con el guión bajo ( _ ), de manera que las variables $_nombre, $_GET, $_123 son totalmente válidas y pueden ser utilizadas sin ningún problema en segmentos de código PHP. Escuela Académica Profesional de Ingeniería de Sistemas
25
26 Sabemos que con PHP no es necesario definir variables que deseamos utilizar en un programa, pero se puede trabajar con los siguientes tipos de datos: Tipos de DatosCaracterísticas IntegerNúmeros enteros, es decir, sin decimales DoubleNúmeros con Decimales StringCadena de caracteres BooleanValores lógicos : True y False Escuela Académica Profesional de Ingeniería de Sistemas
27 Son aquellas cuyo valor es reconocido dentro de cualquier parte del programa. Dentro y fuera de una función. En forma predeterminada al utilizar una variable es de tipo local. $a=“Hola”; Echo “La variable local contiene: $a”; Para crear una Variable Global debe declararla con la palabra Global: Global $a; $a=“Hola a todos” Echo “La variable global contiene: $a”; Escuela Académica Profesional de Ingeniería de Sistemas
28 Son indicadores que se pueden utilizar en PHP cuyo valor no se puede cambiar durante la ejecución de un programa. SINTAXIS: Nombre: Es el nombre de la Constante que desea crear en PHP. Valor: Es el valor que tendrá la contante durante la ejecución del programa. Define(Nombre, Valor) Escuela Académica Profesional de Ingeniería de Sistemas
29 PHP contiene algunas constantes predefinidas que podemos utilizar en cualquier programa. _FILE_ Devuelve el archivo PHP que se esta ejecutando. _LINE_ Devuelve el numero de línea del archivo PHP que se esta ejecutando. PHP_VERSION Devuelve la versión de PHP que se esta utilizando. PHP_OS Devuelve la versión del Sistema Operativo que se esta utilizando. Escuela Académica Profesional de Ingeniería de Sistemas
30 PHP tiene operadores arieticos similares a la mayoría de lenguajes de programación. OperadorAcciónEjemplo + Suma$x + $y - Resta$x – $y * Multiplicación$x * $y / División$x / $y % Residuo de una División $x % $y Escuela Académica Profesional de Ingeniería de Sistemas
31 OperadorAcciónEjemplo. Junta dos cadenas$x. $y OperadorAcciónEjemplo ? La expresión tomara el valor de exp2, si exp1 se evalúa como cierto, y el valor de exp3 si el valor exp1 resulta falso. (exp1)?(exp2):(exp3) Escuela Académica Profesional de Ingeniería de Sistemas
32 Operador AcciónEjemploRESULTADO == Igualdad $x == $y Cierto si $x es igual a $y === Identidad $a === $x Cierto si $a es igual a $x y si además son del mismo tipo != Desigualdad $x != $y Cierto si $x no es igual a $y < Menor que $x < $y Cierto si $x es menor a $y > Mayor que $x > $y Cierto si $x es mayor a $y = $y Cierto si $x es mayor o igual a $y Diferente que $x $y Cierto si $x es diferente a Sy Escuela Académica Profesional de Ingeniería de Sistemas
33 Operador AcciónEfecto $a++ Postincremento Devuelve el valor $a y luego incrementa en uno ++$a Preincremento Incrementa en uno $a y luego devuelve el valor de $a ya incrementado $b-- Postdecremento Devuelve el valor $b y luego le resta uno --$b Predecremento Resta uno a $b y luego devuelve el valor de $b ya decrementado Define(constante,valor) Nos permite crear una constante asignándole un nombre y valor. Defined(constante) Devuelve TRUE si la constante esta definida y por lo tanto existe, en caso contrario devuelve FALSE. Escuela Académica Profesional de Ingeniería de Sistemas
34 Operador AcciónEfecto $a and $b Y Cierto solo si $a y $b son ciertos $a or $b O Cierto solo si $a o $b o ambos son ciertos $a xor $b O Exclusiva Cierto solo si $a o $b pero no si ambos son ciertos a la vez !$a Negación Cierto si $a no es cierto $a&&Sb Y Cierto solo si $a y $b son ciertos $a||$b O Cierto solo si $a o $b o ambos son ciertos. Escuela Académica Profesional de Ingeniería de Sistemas
35 Operador AcciónEfecto = $x = $y $x toma el valor de $y += $x += Sy Equivale a $x = $x + $y -= $x -= $y Equivale a $x = $x - $y *= $x *= $y Equivale a $x = $x * $y /= $x /= $y Equivale a $x = $x / $y %= $x %= $y Equivale a $x = $x % $y.= $x.= $y Equivale a $x = $x. $y Escuela Académica Profesional de Ingeniería de Sistemas
36 EJEMPLOS
37 LISTAR LA TABLA DE MULTIPLICAR DEL NUMERO INGRESADO Formularios HTML con PHP INGRESE UN NUMERO Resultados Tabla de Multiplicar del Nº * =
38 INGRESAR DOS NOTAS Y OBTENER EL PROMEDIO Registro de Notas REGISTRAR NOTAS Alumno Nota Nº 01 Nota Nº 02 resultados notas del alumno nota nº 01 02 promedio observación cualidad regresar
39 HALLAR LA EDAD DE UNA PERSONA Registro de Personas REGISTRAR PERSONAS Nombre Año de Nacimiento Año Actual Resultados DATOS DE LA PERSONA Nombre Año de Nacimiento Año Actual Edad Observación Etapa Regresar
40 Cuando se pretende que el programa, una vez llegado a un cierto punto, tome un camino concreto en determinados casos y otro diferente si las condiciones de ejecución difieren, se utiliza el conjunto de instrucciones: if, else y elseif. La estructura base de este tipo de instrucciones es la siguiente: if (Condición) { Instrucción a1; Instrucción a2; } else { Instrucción b1; Instrucción b2; } Escuela Académica Profesional de Ingeniería de Sistemas
41 La mejor forma de entender esta estructura condicional es por medio de ejemplos. El primero que nos plantearemos es generar un valor aleatorio (lo elige la máquina al azar) comprendido entre 1 y 10. Luego mostraremos un mensaje si es menor o igual a 5 o si es mayor a 5. Escuela Académica Profesional de Ingeniería de Sistemas Problema
42 Generar un valor aleatorio entre 1 y 100. Luego mostrar si tiene 1,2 o 3 dígitos. Como podemos observar estamos en presencia de un problema que tiene tres caminos posibles. El valor puede tener 1 dígito, 2 dígitos o 3 dígitos. Si pensamos un poco podremos identificar que para que tenga un dígito debe generarse un valor entre 1 y 9, para que tenga dos dígitos deberá estar comprendido entre 10 y 99, y finalmente para tener 3 dígitos deberá ser el valor 100. Escuela Académica Profesional de Ingeniería de Sistemas Problema
43 Generar un valor aleatorio entre 1 y 3. Luego imprimir en castellano el número (Ej. si se genera el 3 luego mostrar en la página el string "tres"). Para ver si una variable es igual a cierto valor debemos plantear una condición similar a: if ($valor==3) { //algoritmo } Escuela Académica Profesional de Ingeniería de Sistemas Problema
44 FORMULARIOS HTML CON PHP Dentro de la etiqueta se debe utilizar los atributos: Action Method Action Action: Se utiliza para indicar el sitio Web donde se enviarán y procesarán los datos que un usuario ingresa en el formulario. Method Method : Se utiliza para indicar la forma como se debe transferir hacia el sitio Web los datos que se ingresan en el formulario. Se puede usar las palabras Get o Post POST y GET : El optar por uno u otro obedece a complejas cuestiones de programación basadas en la máxima longitud de registro que puede enviarse cada uno usa un canal de salida distinto. El soporta mas longitud es POST. Escuela Académica Profesional de Ingeniería de Sistemas
45
46
47 INSTRUCCIÓN Empty() y die Empty :Devuelve el valor TRUE si el valor del argumento esta vacio o es un cero. Sintaxis: Empty(argumento) Die: Die:Detiene la ejecución de un programa PHP, puede utilizar también Exit. Con la función die se puede también mostrar un mensaje: die(“No ha ingresado en valor”); Escuela Académica Profesional de Ingeniería de Sistemas
48
49
50
51 Redireccionamiento de paginas Se realiza con la función header y su directiva Location con la siguiente sintaxis: Header(‘Location: PaginaWeb’); Para que la función header funcione correctamente, la pagina PHP debe empezar exactamente con la directiva
76 Funciones definidas por el usuario Implementaremos una función que muestre un titulo centrado en pantalla, y la llamaremos posteriormente dos veces: Problema Escuela Académica Profesional de Ingeniería de Sistemas
77 Funciones definidas por el usuario Una función puede retornar un dato, supongamos que necesitamos una función que nos retorne el promedio de dos valores, el código sería: Problema Escuela Académica Profesional de Ingeniería de Sistemas
78 Funciones definidas por el usuario Si queremos que retorne más de un dato debemos emplear parámetros por referencia. Supongamos que necesitamos ahora que una función nos retorne el cuadrado y cubo de un número: Problema Escuela Académica Profesional de Ingeniería de Sistemas
79 Funciones definidas por el usuario Confeccionar un formulario que solicite la carga del nombre de usuario y su clave en dos oportunidades. En la página que se procesan los datos del formulario implementar una función que imprima un mensaje si las dos claves ingresadas son distintas. Pagina1.html Problema Ingrese nombre de usuario: Ingrese su clave: Repita la clave Escuela Académica Profesional de Ingeniería de Sistemas Pagina2.php Problema Se verificaron las claves ingresadas.
80 Función Fecha La función date retorna un string con una fecha y hora, o partes de ella según un string de formato que le pasamos como parámetro. Se obtiene la fecha y hora del servidor. Veamos como ejemplo la impresión de la fecha y hora actual del servidor: Para la Fecha: d:día dos dígitos "01" al "31“ m:mes dos dígitos "01" al "12“ Y:año cuatro dígitos Para la hora: H:hora dos dígitos "00" a "23“ i:minutos dos dígitos "00" a "59“ s:segundos dos dígitos "00" a "59" Escuela Académica Profesional de Ingeniería de Sistemas Problema
81 Función Fecha Los caracteres de formato que veíamos son los más comunes, pero tenemos otras variantes posibles. Si queremos los días y meses sin el cero delante y el año con dos dígitos tenemos entonces: j:día del mes "1" al "31“ n:mes "1" al "12“ y:año con dos dígitos Escuela Académica Profesional de Ingeniería de Sistemas Problema
82 Función Fecha Por último, a los otros caracteres de formato de la función date que nos pueden servir en alguna ocasión, los podemos ver en el siguiente ejemplo: L:"1" or "0", según si el año es bisiesto o no w:día de la semana, en número, de "0" (domingo) a "6" (sábado) Escuela Académica Profesional de Ingeniería de Sistemas Problema
83 PROBLEMA PROPUESTO. Confeccionar un programa que permita registrar una queja en un archivo de texto.Disponer un formulario que permita almacenar el nombre del visitante (objeto HTML de tipo "text"), la descripción de la queja (objeto de tipo "textarea"). Almacenar en el archivo de texto la fecha y hora de la queja. El archivo "pagina1.php" debe ser el formulario de ingreso de datos. El archivo "pagina2.php" debe registrar la información en el archivo de datos. Por último el archivo "pagina3.php" debe imprimir el archivo con todas las quejas registradas hasta el momento. Disponer un hipervínculo en el archivo "pagina1.php" para poder ver todas las quejas registradas. Escuela Académica Profesional de Ingeniería de Sistemas
84