Title: EXPOSICION PHP (PERSONAL FROM PAGE)
1EXPOSICION PHP(PERSONAL FROM PAGE)
- UNIVERSIDAD CATOLICA DE MANIZALES
- INGENIERIA TELEMATICA
- 2004
2 PHP(PERSONAL FROM PAGE)
- QUE ES PHP?
- PHP (acrónimo de PHP Procesador de Hipertexto)
es el - lenguaje que mejor explota las posibilidades de
Internet o - realizar paginas html dinámicas, con php es muy
sencillo - tratar cadenas de texto o procesar ficheros,
generar imágenes - on-the-fly, crear documentos PDF o tratar con
documentos - XML, etc. Se puede decir que PHP es un lenguaje
de - programación de páginas web del lado del servidor
cuyas - características principales son la independencia
de plataforma - y su gratuidad.
- Un lenguaje del lado del servidor es aquel que se
ejecuta en el - servidor web, justo antes de que se envíe la
página a través - de Internet al cliente. Las páginas que se
ejecutan en el - servidor pueden realizar accesos a bases de
datos, conexiones - en red, y otras tareas para crear la página final
que verá el - cliente. El cliente solamente recibe una página
con el código - HTML resultante de la ejecución de la PHP.
3- A diferencia de Java o JavaScript que se ejecutan
en el - navegador, PHP se ejecuta en el servidor, por eso
nos permite - acceder a los recursos que tenga el servidor como
por - ejemplo podría ser una base de datos. El programa
PHP es - ejecutado en el servidor y el resultado enviado
al navegador. - El resultado es normalmente una página HTML pero
- igualmente podría ser una pagina WML.
4- Su licencia es Open Source, corre en múltiples
plataformas, - Linux, AIX, BSD, SCO, casi todos los tipos de
Unix, además de - en todas las versiones de Windows 9x, 2000 y NT.
- PHP no es case sensitive (no distingue mayúsculas
de minúsculas), salvo bugs en el tratamiento de
objetos. - En PHP no se declaran las variables y no tienen
un tipo fijo, sino que una misma variable puede
almacenar a lo largo de su vida valores de todo
tipo (números, cadenas...).
5HISTORIA PHP
- PHP fue concebido en otoño de 1994 por Rasmus
Lerdorf. La - primera versión disponible para el público surgió
a principios - de 1995, fue conocida como "Herramientas para
páginas web - personales" (Personal Home Page Tools).
Consistían en un - analizador sintáctico muy simple y una serie de
utilidades - comunes en las páginas web de entonces, un libro
de visitas, - un contador y otras pequeñas cosas.
- El analizador sintactico fue reescrito a mediados
de 1995 y fue - nombrado PHP/FI versión 2. FI viene de otro
programa que - Rasmus había escrito y que procesaba los datos de
formularios, - así que combinó las "Herramientas para paginas
web - personales y el "intérprete de formularios", asi
añadió soporte - para mSQL y PHP/FI creció a gran velocidad.
- Se estima que a finales de 1996 PHP/FI se estaba
usando en al - menos 15.000 páginas web alrededor del mundo. A
mediados - de 1997 el desarrollo del proyecto sufrió un
profundo cambio, - el analizador sintáctico se reescribió desde el
principio por Zeev - Suraski y Andi Gutmans y éste nuevo analizador
estableció las - bases para PHP versión 3. Gran cantidad de código
de PHP/FI
6- Hoy en día, tanto PHP/FI, PHP3 y PHP4 se
distribuyen en un - gran número de productos comerciales tales como
el servidor - web "C2's StrongHold" y Redhat Linux.
- Actualmente PHP se encuentra en su versión 4, que
- utiliza el motor Zend, desarrollado con mayor
- meditación para cubrir las necesidades actuales y
- solucionar algunos inconvenientes como la rapidez
- gracias a que primero se compila y luego se
ejecuta, - mientras que antes se ejecutaba mientras se
- interpretaba el código, su mayor independencia
del - servidor web creando versiones de PHP nativas
para - más plataformas y un API más elaborado y con más
- funciones.
7CARACTERISTICAS PHP
- PHP puede hacer cualquier cosa que se pueda hacer
con un - script CGI, como procesar la información de
formularios, - generar páginas con contenidos dinámicos, o
mandar y recibir - cookies.
- La característica más potente y destacable de PHP
es su soporte - para una gran cantidad de bases de datos.
Escribir un interfaz - vía web para una base de datos es una tarea
simple con PHP. - Las siguientes bases de datos están soportadas
actualmente - Adabas D
- Ingres
- Oracle (OCI7 y OCI8)
- dBase
- InterBase
- PostgreSQL
- Empress
- FrontBase
- Solid
- FilePro
8- IBM DB2
- MySQL
- Velocis
- Informix
- ODBC
- Unix dbm
- PHP también tiene soporte para gran cantidad de
estándares de - red LDAP, Corba, Calc, FTP, IMAP, POP3, NNTP,
NIS, SMNP, - HTTP y derivados. También se pueden abrir sockets
de red - directos (raw sockets) e interactuar con otros
protocolos. - Y además PHP también ofrece
- Soporte de Templates dinámicos y caché de
templates. - Multiplataforma y multiservidor web
- Soporte XML, WDDX, XSLT, DOM
- Extensa documentación
9- Soporte expresiones regulares (de perl, posix y
propias) - Generación on-the-fly de Imagenes, Flash y PDF
- PHP puede realizar una serie de tareas para el
desarrollo de la - web
- Funciones de correo electrónico
- Gestión de base de datos
- Tratamiento de imágenes
- Otras características
- PHP es un lenguaje de scripts que se ejecuta del
lado del - servidor
- Es independiente de la plataforma
- Se escribe directamente dentro del código html
de una pagina - Es rápido, simple y configurable
-
10QUE SE PUEDE HACER CON PHP?
- Algunas aplicaciones son
- Portales
- Administradores de banners
- Clientes de correo
- Foros de discusión
- Sistema de educación en línea
- Chats
- Administradores de bases de datos
- Libros de visitas
- Sistemas de subastas
- Contadores
- Carritos de compras
11CONFIGURACION PHP
- Abrimos con un editor de texto el archivo php.ini
y - verificamos que tenga la siguiente línea
- extension_dir ./
- Aquí le decimos al PHP dónde se encuentran
ubicadas las - extensiones de librerías .dll en este caso vemos
que deben - encontrarse en el directorio raíz del PHP.
- Luego si lo deseamos buscamos la línea
extensionphp_gd.dll - Y le quitamos el que tiene al comienzo, así
habilitaremos la - librería de manipulación de gráficos dinámicos.
- Sólo resta ubicar el archivo php_gd.dll y
copiarlo al directorio - raíz del PHP.
- Y por último hacemos una copia del archivo
php.ini dentro del - directorio Windows que por lo general es
C\Windows
12ELEMENTOS PHP
- OPERADORES ARITMETICOS
- Los operadores son símbolos especiales que se
utilizan para - realizar tanto operaciones matemáticas, como de
comparación. - Los más utilizados en PHP
- Suma varios números 5 4 9
- - Resta varios números 5 - 4 1
- Realiza una multiplicación 3 3 9
- / Realiza una división 10/2 5
- Devuelve el residuo de una división 10 3 1
- Suma 1 v (Agrega 1 a v)
- -- Resta 1 v-- (Resta 1 a v)
- OPERADORES DE COMPARACION
- Devuelve true si la condición de igualdad se
cumple 2 2 (Verdadero)
13- ! Devuelve true sin la condición de igualdad no
se cumple 2 ! 2 (Falso) - lt Devuelve true si un número es menor que el otro
2 lt 5 (Verdadero) - gt Devuelve true si un número es mayor que el otro
6 gt 4 (Verdadero) - lt Devuelve true si un número es menor o igual
que otro 2 lt 5 (Verdadero) - gt Devuelve true si un número es mayor o igual
que otro 6 gt 4 (Verdadero) - OPERADORES LOGICOS
- Devuelve verdadero cuando ambas condiciones
son verdaderas. - and Devuelve verdadero cuando ambas condiciones
son verdaderas. - Devuelve verdadero cuando al menos una es
verdadera. - OR Devuelve verdadero cuando al menos una es
verdadera.
14- VARIABLES PHP
- En PHP no es necesario declarar la variable, es
decir, no es - necesario decirle al programa si una variable es
una cadena o - un número entero, ya que PHP se encargará de
definirla por sí - mismo.
- Una variable es un contenedor de información, en
el que - podemos meter números enteros, números decimales,
- caracteres... el contenido de las variables se
puede leer y se - puede cambiar durante la ejecución de una página
PHP. - En PHP todas las variables comienzan con el
símbolo del dólar - Existen 2 tipos de variables, las variables
locales que solo - pueden ser usadas dentro de funciones y las
variables globales - que tienen su ámbito de uso fuera de las
funciones, podemos - acceder a una variable global desde una función
con la - instrucción global nombre_variable.
15- CONTANTES PHP
- Las constantes son similares a las variables, con
la salvedad de - que no llevan el signo dólar delante, y sólo la
podemos asignar - una vez. Para definir una constantes usaremos la
función define - como por ejemplo
- define ("CONSTANTE", "Hola Mundo")
- PHP crea diversas constantes al arrancar, como
PHP_VERSION - que contiene la versión de PHP, TRUE que le
asigna 1 o FALSE que - le asigna 0.
16- CLASES DE PHP
- Las Clases no son más que una serie de variables
y funciones - que describen y actúan sobre algo.
- Por ejemplo, vamos a crear la clase automóvil, la
cual tendrá - diversas variables, color, modelo, marca,
potencia, - matricula y habrá una serie de funciones que
actuarán sobre la - clase automóvil como Precio(), Acelerar(),
Frenar(), Girar()y - Reparar().
- Sirven para hacer el código más legible y
reutilizable.
17- FUNCIONES EN PHP
- Una Función no es más que un bloque de código al
que le - pasamos una serie de parámetros y nos devuelve un
valor. - Para declara una función debemos utilizar la
instrucción - función seguido del nombre que le vamos a dar, y
después - entre paréntesis la lista de argumentos separados
por comas, - aunque también habrá funciones que no recojan
ningún - argumento.
- Ejemplo
- function nombre_de_funcion (arg_1, arg_2, ...,
arg_n) -
- bloque de código
18- LIBRERIAS EN PHP
- El uso de librerías es tremendamente útil, nos
permiten - agrupar varias funciones y variables en un mismo
fichero, de - manera que luego podemos incluir esta librería en
distintas - páginas y disponer de esas funciones fácilmente.
- La instrucción para incluir una librería en
nuestra página es - include("nombre de librería")
19- LAS TABLAS O ARRAYS EN PHP
- Las tablas (o array en inglés), son muy
importantes en PHP, ya - que generalmente, las funciones que devuelven
varios valores, - como las funciones ligadas a las bases de datos,
lo hacen en - forma de tabla.
- Existen dos tipos de tablas, las que se usan
utilizando índices y - las tablas asociativas en las cuales a cada
elemento se le asigna - un valor para acceder a el.
20- CADENAS EN PHP
- En PHP el tratamiento de cadenas es muy
importante, existen - bastantes funciones para el manejo de cadenas, a
continuación - explicaremos las más usadas.
- strlen(cadena). Nos devuelve el número de
carácteres de una cadena. - split(separador,cadena). Divide una cadena en
varias usando un carácter separador. - sprintf(cadena de formato, var1, var2...).
Formatea una cadena de texto al igual que printf
pero el resultado es devuelto como una cadena. - substr(cadena, inicio, longitud). Devuelve una
subcadena de otra, empezando por inicio y de
longitud longitud. - chop(cadena). Elimina los saltos de línea y los
espacios finales de una cadena. - strpos(cadena1, cadena2). Busca la cadena2 dentro
de cadena1 indicándonos la posición en la que se
encuentra. - str_replace(cadena1, cadena2, texto). Reemplaza
la cadena1 por la cadena2 en el texto.
21- BUCLES EN PHP
- Los bucles nos permiten iterar conjuntos de
instrucciones, es - decir repetir la ejecución de un conjunto de
instrucciones - mientras se cumpla una condición.
- Ejemplo Sentencia while
- lt?php while (condición)
intrucciones a ejecutar. ?gt - Mientras la condición sea cierta se reiterará la
ejecución de las - instrucciones que están dentro del while.
- Sentencia for
- lt?php for (inicial condición ejecutar
en iteración) intrucciones a
ejecutar. ?gt
22- SENTENCIAS DE CONTROL PHP
- Las sentencias de control permiten ejecutar
bloque de códigos - dependiendo de unas condiciones. Para PHP el 0 es
equivalente a - Falso y cualquier otro número es Verdadero.
- La sentencia IF...ELSE permite ejecutar un bloque
de instrucciones - si la condición es Verdadera y otro bloque de
instrucciones si ésta - es Falsa. Es importante tener en cuenta que
instrucciones si ésta - es Falsa. Es importante tener en cuenta que la
condición que - evaluemos ha de estar encerrada entre paréntesis
(esto es - aplicable a todas la sentencias de control).
- Ejemplo
- if (condición)
- Este bloque se ejecuta si la condición es
VERDADERA - else
- Este boque se ejecuta si la condición es
FALSA
23PRIMER SCRIPT
- Ejemplo
- lthtmlgtltbodygtlt?phpmyvar "Hola. Este es
mi primer script en PHP \n"//Esto es un
comentarioes mi primer script en PHP \n"//Esto
es un comentarioecho myvar?gtlt/bodygtlt/htmlgt
24PHP PARA BASE DE DATOS
- PHP ofrece soporte para muchas bases de datos
como por - ejemplo
- Oracle
- Sybase
- Mysql
- SQL server
- PostgreSQL
- Interbase
- Informix
- ODBE(Fuente de datos)
25CREAR BASE DE DATOS MYSQL
- PHP con acceso a base de datos es preferible la
base de datos - MySQL por ser gratuita y por ser también la mas
empleada en - entornos UNIX, para lo cual el servidor donde
tenemos alojadas - las páginas nos tiene que proporcionar
herramientas para - crearla o acceso al Telnet para que la creemos
por nosotros - mismos.
- El comando para crear una base de datos MySQL es
el siguiente - mysqladmin -u root create
base_datos - Con este comando conseguimos crear la una base de
datos en el - servidor de bases de datos de nuestro servidor.
26 Una vez conseguido esto debemos crear las
tablas en la base de datos, la descripción de las
tablas contienen la estructura de la información
que almacenaremos en ellas. Para crear la tabla
puede usar la herramienta de administración de
MySQL de su servidor web o puede escribir un
fichero de texto con el contenido de la sentencia
SQL equivalente y luego decirle al motor de base
de datos que la ejecute con la siguiente
instrucción mysql -u
root base_datos ltprueba.sql
27CONEXION CON LA BASE DE DATOS
- Una vez que se crea la base de datos nos
conectamos a la misma - desde una página PHP. Para ello PHP nos
proporciona una serie - de instrucciones para acceder a bases de datos
MySQL. - Al ejecutar la instrucción mysql_connect creamos
un - vínculo entre la base de datos y la pagina PHP,
este - vínculo será usado posteriormente en las
consultas que - hagamos a la base de datos.
- Finalmente, una vez que hemos terminado de usar
el - vínculo con la base de datos, lo liberaremos con
la - instrucción mysql_close para que la conexión no
quede ocupada. - Ejemplo
28- lthtmlgt ltheadgt lttitlegtEjemplo de PHPlt/titlegt
lt/headgt ltbodygt lt?php function Conectarse()
if (!(linkmysql_connect("localhost","usuario
","Password"))) echo "Error
conectando a la base de datos." exit()
if (!mysql_select_db("base_datos",link)
) echo "Error seleccionando la base
de datos." exit() return
link linkConectarse() echo "Conexión
con la base de datos conseguida.ltbrgt"
mysql_close(link) //cierra la conexion ?gt
lt/bodygt lt/htmlgt
29CONSULTAS EN LA BASE DE DATOS
- Un ejemplo para realizar consultas en la base de
datos - lthtmlgt ltheadgt lttitlegtEjemplo de PHPlt/titlegt
lt/headgt ltbodygt ltH1gtEjemplo de uso de bases de
datos con PHP y MySQLlt/H1gt lt?php
include("conex.phtml") linkConectarse()
resultmysql_query("select from
prueba",link) ?gt ltTABLE BORDER1
CELLSPACING1 CELLPADDING1gt ltTRgtltTDgtnbsp
Nombrelt/TDgtltTDgtnbspApellidosnbsplt/TDgtlt/TRgt
lt?php while(row mysql_fetch_array(
result)) printf("lttrgtlttdgtnbspslt/tdgtlttd
gtnbspsnbsplt/tdgtlt/trgt", row"Nombre",row"A
pellidos") mysql_free_result(result)
mysql_close(link) ?gt lt/tablegt lt/bodygt
lt/htmlgt
30MODIFICAR LA BASE DE DATOS
- Ejemplo
- lthtmlgt
- ltbodygt
- lt?php if (isset(id))
- // process form
- link mysql_connect("localhost", "root")
mysql_select_db("mydb",db) - sql "UPDATE agenda SET nombre'nombre',
direccion'direccion',". "telefono'telefono',
email'email' WHERE idid" result
mysql_query(sql) - else echo "Debe especificar un 'id'.\n"
-
- lt/bodygt
- lt/htmlgt
-
31AÑADIR REGISTROS A LA BASE DE DATOS
- En primer lugar se crear una página web con un
simple - formulario, con los campos que deseamos.
- Formulario inicial añadir BD
- lthtmlgt
- ltbodygt
- ltform method"post" action"add_reg.php3"gt
- Nombre ltinput type"Text"
name"nombre"gtltbrgt Direcciónltinput type"Text"
name"direccion"gtltbrgt Teléfono ltinput
type"Text" name"telefono"gtltbrgt E-mail ltinput
type"Text" name"email"gtltbrgt ltinput
type"Submit" name"enviar" value"Aceptar
información"gt - lt/formgt
- lt/bodygt
- lt/htmlgt
32- SCRIPT PARA AÑADIR REGISTROS
- lthtmlgt
- ltbodygt
- lt?php // process form link mysql_connect("loca
lhost","root") - mysql_select_db("mydb",db)
- sql "INSERT INTO agenda (nombre,
dirección, teléfono, mail) ". - "VALUES ('nombre', 'direccion',
'telefono', 'email')" - result mysql_query(sql)
- echo "Gracias! Hemos recibido sus datos.\n"
- lt/bodygt
- lt/htmlgt
33BORRAR REGISTROS DE LA BASE DE DATOS
- El proceso de borrar un registro es idéntico al
de modificar, solo - que en vez de utilizar UPDATE utilizamos DELETE
en la sentencia - SQL. Por tanto el script quedaría como sigue
- lthtmlgt
- ltbodygt
- lt?php if (isset(id)) // process form link
mysql_connect("localhost", "root")
mysql_select_db("mydb",db) sql "DELETE
agenda WHERE idid") result
mysql_query(sql) else echo "Debe especificar
un 'id'.\n" -
- lt/bodygt
- lt/htmlgt
-
34FUNCIONES PARA ABSTRACCION DE BASES DE
DATOSBerkeley DB
- Este es un nivel de abstracción general para
varias - bases de datos. Como tal su funcionalidad esta
- limitada a un grupo de modernas bases de datos
como - Sleepycat software DB2.
- El comportamiento de varios aspectos depende de
la - implementación de la base de datos. Funciones
como - dba_optimize() y dba_sync() cumplirán su
- Funcionalidad con unas bases de datos pero no con
- otras.
- Los siguientes manejadores (handlers) están
- soportados
- dbm es el mas antiguo (original) tipo de base de
datos de la familia de Berkeley DB. Se debe
evitar su uso, si es posible. Nosotros no
soportamos las funciones de compatibilidad de DB2
y gdbm, porque ellas solo son compatibles a nivel
de codigo fuente, pero no pueden manejar el
formato original dbm.
35- ndbm es un tipo mas nuevo y mas flexible que dbm.
Todavía tiene la mayoría de las limitaciones de
dbm (Por lo tanto es descartado). - gdbm es el gestor de bases de datos de GNU
(database manager). - db2 es Sleepycat Software's DB2. Es descrito como
"un conjunto - de herramientas de programación que proveen
acceso de alto nivel a bases de datos en
aplicaciones standalone o en el modelo
cliente/servidor. - cdb es "una rápida, de confianza, sencilla
herramienta para la creación y lectura de bases
de datos constantes." Fue creada por el autor de
qmail y puede encontrarse en here. Como la base
es constante solo se soportan las operaciones de
lectura.