E N D
1. 1 TALLER DE PHP Instructor:
Christian Fernando Bonner Barbosa
2. 2
3. 3 1. Introducción a PHP PHP es el acrónimo de Hipertext Preprocesor. Es un lenguaje de programación multiplataforma ejecutado del lado del servidor, es rápido, con una gran variedad de librerías de funciones y documentación amplia en línea.
Un lenguaje del lado del servidor es aquel que se ejecuta en el servidor web, donde es procesada la página para posteriormente ser enviada al navegador web del cliente.
El cliente solamente recibe una página web con código HTML resultante de la ejecución del intérprete de PHP.
Nota: Puede contener algunos scripts de otros lenguajes (Javascript, Applets, etc.)
4. 4 1. Introducción a PHP
5. 5 1. Introducción a PHP
6. 6 1. Introducción a PHP Breve historia de PHP
Creado por Rasmus Lerdorf para uso personal en 1994
PHP = Personal Hypertext Processor
Versión actual: PHP 4
Es un módulo que se añade al servidor web y fue concebido inicialmente para Apache
¿Por qué PHP?
Por sus ventajas: es potente, fácil de aprender, de libre distribución, permite el acceso a bases de datos y otras funcionalidades orientadas a la red
Dispone de abundante soporte en la Web
7. 7 1. Introducción a PHP Requisitos
Servidor web Apache (http://www.apache.org)
PHP (http://www.php.net)
MySQL (http://www.mysql.com).
Otras utilidades
Herramientas para la gestión de MySQL: PHPMyAdmin (http:// www.phpmyadmin.net)
Editores de PHP: PhpEdit (http://www.phpedit.com)
Manuales de PHP y MySQL
8. 8 2. Historia y Desarrolladores
9. 9 3. Plataformas soportadas
10. 10 4. Bases de datos soportadas
11. 11 5. Delimitadores, fin de línea y comentarios. Sólo el 2º y 3º están disponibles SIEMPRE.
Los otros dos se pueden activar/desactivar al compilar PHP.Sólo el 2º y 3º están disponibles SIEMPRE.
Los otros dos se pueden activar/desactivar al compilar PHP.
12. 12 6. Variables
13. 13 6.1 Ámbito de variables. En el cuerpo de un archivo, las variables son GLOBALES al archivo y archivos incluidos.
En una función, son LOCALES a esa función, siempre y cuando no se mande llamar una variable global previamente definida.
Dentro de una clase, sólo pueden ser accedidas a través del operador “->” sobre el nombre del objeto.
14. 14 6.2 Referencias.
15. 15 6.3 Tipos de datos.
16. 16 6.4 Arreglos.
17. 17 6.5 Caracteres adicionales en cadenas. Se pueden definir de tres formas …Se pueden definir de tres formas …
18. 18 6.6 Uso de cadenas
19. 19 6.7 Cadenas. Comparación.
20. 20 6.8 Cadenas. Subcadenas.
21. 21 6.9 Cadenas. Subcadenas. Ejemplo: substr.php
22. 22 6.10 Cadenas. Subcadenas. (2)
23. 23 7. Constantes int define(string nombre, mixed valor [, int noMayusculas])
Donde nombre es el nombre que le queremos dar a la constante, valor su valor, y el campo opcional noMayusculas indica si está a 1 que podemos acceder a la variable independientemente con mayúsculas o minúsculas, mientras que si está a 0 (valor por defecto) sólo podremos acceder a ella de la misma forma como la hayamos definido. int define(string nombre, mixed valor [, int noMayusculas])
Donde nombre es el nombre que le queremos dar a la constante, valor su valor, y el campo opcional noMayusculas indica si está a 1 que podemos acceder a la variable independientemente con mayúsculas o minúsculas, mientras que si está a 0 (valor por defecto) sólo podremos acceder a ella de la misma forma como la hayamos definido.
24. 24 8.1 Operadores aritméticos.
25. 25 8.2 Auto-incremento y Auto-decremento.
26. 26 8.3 Operadores lógicos.
27. 27 8.4 Operadores. Asignación, igualdad e identidad.
28. 28 8.5 Operadores. Asignación, igualdad e identidad
29. 29 9. Comparaciones.
30. 30 10.1 Estructuras de control. if … else
31. 31 10.2 Estructuras de control. if … elseif … else (2)
32. 32 11. 1 while y do … while
33. 33 11.2 Ciclo for
34. 34 11.3 Ejemplos
35. 35 11.4 foreach
36. 36 11.5 foreach (2)
37. 37 12. Switch
38. 38 13. Funciones.
39. 39 14. Include y Require La sentencia include(arch) incluye y evalúa el archivo especificado.
La sentencia require(arch) se sustituye a sí misma con el archivo especificado tal y como funciona la directiva #include de C.
El intérprete sale del modo PHP y entra en modo HTML al principio del archivo referenciado, y vuelve de nuevo al modo PHP al final.
Include() se re-evalúa cada vez que se encuentra (y sólo cuando está siendo ejecutada)
require() siempre leerá el archivo referenciado, incluso si la línea en que está no se ejecuta nunca (condicional).
40. 40 15. Variables de Sistema $HTTP_USER_AGENT Nos informa principalmente sobre el sistema operativo y tipo y versión de navegador utilizado por el usuario. Su principal utilidad radica en que, a partir de esta información, podemos redireccionar nuestros usuarios hacia páginas optimizadas para su navegador o realizar cualquier otro tipo de acción en el contexto de un navegador determinado.
$HTTP_ACCEPT_LANGUAGE Nos devuelve la o las abreviaciones de la lengua considerada como principal por el navegador. Esta lengua o lenguas principales pueden ser elegidas en el menú de opciones del navegador. Esta variable resulta también extremadamente útil para enviar al internauta a las páginas escritas en su lengua, si es que existen.
$HTTP_REFERER Nos indica la URL desde la cual el internauta ha tenido acceso a la página. Muy interesante para generar botones de "Atrás" dinámicos o para crear nuestros propios sistemas de estadísticas de visitas.
41. 41 15. Variables de Sistema $PHP_SELF Nos devuelve una cadena con la URL del script que está siendo ejecutado. Muy interesante para crear botones para recargar la página.
$HTTP_GET_VARS Se trata de un array que almacena los nombres y contenidos de las variables enviadas al script por URL o por formularios GET
$HTTP_POST_VARS Se trata de un array que almacena los nombres y contenidos de las variables enviadas al script por medio de un formulario POST
$HTTP_COOKIES_VARS Se trata de un array que almacena los nombres y contenidos de las cookies. Veremos qué son más adelante.
42. 42 15. Variables de Sistema $PHP_AUTH_USER Almacena la variable usuario cuando se efectúa la entrada a páginas de acceso restringido. Combinado con $PHP_AUTH_PW resulta ideal para controlar el acceso a las páginas internas del sitio.
$PHP_AUTH_PW Almacena la variable password cuando se efectúa la entrada a páginas de acceso restringido. Combinado con $PHP_AUTH_USER resulta ideal para controlar el acceso a las páginas internas del sitio.
$REMOTE_ADDR Muestra la dirección IP del visitante.
$DOCUMENT_ROOT Nos devuelve el path físico en el que se encuentra alojada la página en el servidor.
$PHPSESSID Guarda el identificador de sesión del usuario. Veremos más adelante en qué consisten las sesiones.
43. 43 15.1 Ejemplo Variables de Sistema
44. 44 16.1 Formularios. Valores sencillos.
45. 45 16.2 Formularios. Valores múltiples.
46. 46 16.3 Pasar Variables por la URL Para pasar las variables de una página a otra lo podemos hacer introduciendo dicha variable dentro del enlace hipertexto de la página destino. La sintaxis sería la siguiente:
<a href="destino.php?var1=valor1&var2=valor2&...">Mi enlace</a>
Estas variables no poseen el símbolo $ delante. Esto es debido a que en realidad este modo de pasar variables no es específico de PHP
47. 47 16.4 Pasar Variables por la URL.
48. 48 17. Sesiones y Cookies. Una sesión es una cantidad de información que se almacena dentro del servidor con un identificador único de usuario.
Éste id es enviado autómaticamente al usuario por medio de cookies.
Dentro de ésta sesión se puede almacenar los valores de las variables y disponer de ellas en cualquiera de las páginas en las que se inicie una sesión.
Una ventaja extra es que al cambiar el valor de las variables, automáticamente cambia su valor para la sesión.
49. 49 17.1 Sesiones.
50. 50 17.2 Cookies.
51. 51 18.1 MySql. Conexión y desconexión.
52. 52 18.2 MySql. Conexión y desconexión. Ejemplo.
53. 53 18.3 MySql. Elegir una BD.
54. 54 18.4 MySql. Querys.
55. 55 18.5 MySql. Extraer información.
56. 56 18.6 MySql. Extraer información. Ejemplos.
57. 57 19.1 Archivos. Abrir y cerrar.
58. 58 19.2 Archivos. Leer y escribir.
59. 59 19.3 Archivos. Copiar / renombrar / borrar.
60. 60 19.4 Directorios.
61. 61 19.5 Directorio. Listado de contenidos.
62. 62 19.6 Archivos. Envío.
63. 63 19.6 Archivos. Envío.
64. 64 Fin