Está en la página 1de 23

Proyectos Web

Tema

01 :

Fundamentos para las Pginas Web PHP

1.1. ARQUITECTURA DE LA WEB La arquitectura de un sitio Web tiene tres componentes principales: Un Servidor Web, una conexin de red, y uno o ms clientes (browsers).

1.1.1. Cliente Web o browser El cliente Web es un programa con el que el usuario interacciona para solicitar a un servidor Web el envo de pginas de informacin. Estas pginas se transfieren mediante el protocolo HTTP. Las pginas que se reciben son documentos de texto codificados en lenguaje HTML (Lenguaje de Marcado para Hipertexto) As, la estructura bsica de un documento HTML, puede sintetizarse de la siguiente forma:
<html> <head> <title>Ttulo de la pgina</title> </head> <body> Textos, grficos, enlaces, etc. </body> </html>

Donde: <html> y </html> indican que el documento est escrito en HTML. <head> y </head> definen el encabezamiento del documento, que bsicamente incluye el titulo de la pgina (el cual se coloca entre las etiquetas <title> y </title>); y eventualmente alguna otra etiqueta, como las meta name, que indican una breve descripcin

-8-

Ing. Wagner Vicente Ramos

Proyectos Web
del contenido de la pgina y/o palabras clave de la misma que ayudan a las mquinas buscadoras de informacin en Internet. <body> y </body> es el lugar donde se introduce el contenido propiamente dicho de la pgina Web.

El cliente web debe interpretar estos documentos para mostrrselos al usuario en el formato adecuado. Adems, cuando lo que se recibe no es un documento de texto, sino un objeto multimedia (vdeo, sonido, etc.) no reconocido por el cliente web, ste debe activar una aplicacin externa capaz de gestionarlo. Entre los clientes web (tambin conocidos como visualizadores o navegadores) ms usuales estn el Netscape Navigator y el Microsoft Internet Explorer.

-9-

Ing. Wagner Vicente Ramos

Proyectos Web
La mayora de ellos soportan tambin otros protocolos, como el FTP (File TransferProtocol), para la transferencia de ficheros, y el SMTP (Single Mali Transfer Protocol), para el envo y la recepcin de correo electrnico. 1.1.2. Servidor Web El servidor Web es un programa que est permanentemente escuchando las peticiones de conexin de los clientes mediante el protocolo HTTP. El servidor funciona de la siguiente manera: si encuentra en su sistema de ficheros el documento HTML solicitado por el cliente, lo enva y cierra la conexin; en caso contrario, enva un cdigo de error que cierra la conexin. El servidor Web tambin se ocupa de controlar los aspectos de seguridad, comprobando si el usuario tiene acceso a los documentos. El proceso completo, desde que el usuario solicita una pgina hasta que el cliente Web se la muestra con el formato adecuado, es el siguiente: El usuario especifica en el cliente Web la direccin (URL) de la pgina que desea consultar. El cliente establece la conexin con el servidor Web. El cliente solicita la pgina deseada. El servidor busca la pgina que ha sido solicitada en su sistema de archivos, Si la encuentra, la enva al cliente; en caso contrario, devuelve un cdigo de error. El cliente interpreta los cdigos HTML y muestra la pgina al usuario. Se cierra la conexin.

Es muy probable que la pgina solicitada no exista fsicamente, sino que se cree en el momento de su peticin, siendo el caso para una pgina dinmica (por ejemplo, combinando una plantilla de - 10 Ing. Wagner Vicente Ramos

Proyectos Web
documento con los resultados de la consulta a una base de datos). En estos casos el servidor web cede el control al denominado Servidor de Aplicaciones, que es quien se encarga de construir la pgina. Una vez creada la pasa al servidor Web, que a su vez la enva al cliente en lenguaje HTML. Entre los Servidores Web ms comunes y utilizados tenemos: Apache; creado y mantenido por la Apache Software Fundation, es el software de servidor ms popular actualmente, y esta instalado en ms del 50% de los servidores Web del mundo. Apache es un software de cdigo abierto y se puede obtener gratuitamente o a muy bajo precio. Es estable y potente y se ejecuta en casi todos los sistemas operativos.

Internet Information Server; es el software de Microsoft, y es el segundo en popularidad despus de Apache. Es potente y flexible, aunque como producto de Microsoft se ejecuta slo en servidores con sistema operativo Windows (NT, 200 o XP).

- 11 -

Ing. Wagner Vicente Ramos

Proyectos Web

1.2. PGINA DINMICA Las pginas dinmicas son aquellas pginas Web que SI son modificadas y personalizadas, antes de ser enviadas al cliente, por el Servidor de Aplicaciones. Son aquellas pginas que contienen lenguaje script adicional al HTML y tienen que ser modificadas por un servidor de aplicaciones antes de ser enviadas al navegador solicitante. La naturaleza cambiante de este tipo de pgina es la que le da el nombre de dinmica. 1.3. PROCESAMIENTO DE UNA PGINA DINMICA Cuando el servidor Web recibe una peticin para mostrar una pgina dinmica, reacciona de distinta forma: transfiere la pgina a un software especial encargado de finalizar la pgina. Este software especial se denomina Servidor de Aplicaciones. El Servidor de Aplicaciones, es un software que ayuda al servidor Web a procesar las pginas que contienen scripts o etiquetas del lado del servidor. Pues cuando se solicita al servidor una pgina de este tipo, el servidor Web pasa la pgina al servidor de aplicaciones para su procesamiento antes de enviarla al navegador. El Servidor de Aplicaciones lee el cdigo de la pgina, finaliza la pgina en funcin de las instrucciones del cdigo y elimina el cdigo de la pgina. El resultado es una pgina esttica que el servidor de aplicaciones devuelve al servidor Web, que a su vez la enva al navegador solicitante. Lo nico que el navegador recibe es cdigo la pgina en HTML puro. - 12 Ing. Wagner Vicente Ramos

Proyectos Web

Entre los principales servidores de aplicacin tenemos: Servidor de aplicaciones Lenguaje Macromedia ColdFusion ColdFusion Markup Language (CFML) ASP.NET Visual Basic C# Active Server Pages (ASP) VBScript JavaScript Java Server Pages (JSP) Java PHP PHP 1.3.1. Servidor de Aplicaciones ColdFusion: ColdFusion de Macromedia, se ha convertido en una alternativa muy popular a ASP, principalmente porque usa un medio de comunicacin con el Sistema Gestionador de Base de Datos, mediante etiquetas en lugar de scripts. La parte servidor de aplicacin de ColdFusion se llama ColdFusionServer y opera en servidores que ejecutan Windows, Linux o Solaris. Pero su uso,

- 13 -

Ing. Wagner Vicente Ramos

Proyectos Web
requiere del uso de licencias comerciales, por lo que no es recomendable para pequeas empresas. 1.3.2. Servidor de Aplicaciones ASP/ASP.NET: ASP(Pginas Activas de Servidor) es el servidor de aplicaciones bsico de Microsoft. ASP no es un programa independiente, como el anterior, sino es una funcionalidad integrada en el software de servidor Web de Microsoft (IIS). Muchos usuarios estn utilizando la tecnologa reciente de ASP.NET, que soporta lenguajes como C++, C#, VBScript y JavaScript. Su principal desventaja de esta tecnologa es que solo se ejecuta sobre servidores Web Windows, es decir sobre Internet Information Server. 1.3.3. Servidor de Aplicaciones JSP: JSP, o Pginas Java Server, es una alternativa basada en Java. El servidor de aplicaciones tiene la forma de un subprograma, llamado contenedor, que reside en el servidor. Es de uso gratuito (Tomcat de Java) pero su codificacin es un poco compleja de aprender. 1.3.4. Servidor de Aplicaciones PHP: PHP, es el acrnimo de Procesador de Hipertexto, es una alternativa popular de cdigo abierto a los sistemas comerciales. Sus comandos estn basados en scripts y es de uso gratuito. PHP funciona en servidores web Apache e IIS de Microsoft y en sistemas operativos como Unix, Windows y Mac OS. 1.4. PGINAS DINMICAS Y LAS BASES DE DATOS Un servidor de aplicaciones tambin permite trabajar con recursos del lado del servidor, como las bases de datos. Por ejemplo, una pgina dinmica puede indicar al servidor de aplicaciones que extraiga datos de una base de datos y los inserte en el cdigo HTML de la pgina. La instruccin para extraer datos de una base de datos recibe el nombre de consulta de base de datos. Una consulta consta de criterios de bsqueda expresados en un lenguaje de base de datos denominado SQL (Structured Query Language, lenguaje de consulta estructurado). La consulta SQL se escribe en los scripts o etiquetas del lado del servidor de la pgina.

- 14 -

Ing. Wagner Vicente Ramos

Proyectos Web

Puede utilizar prcticamente cualquier base de datos con su aplicacin Web, siempre y cuando se haya instalado el controlador de base de datos correcto en el servidor. Un controlador de base de datos es un software que acta como intrprete entre una aplicacin Web y una base de datos. Los datos de una base de datos se almacenan en un formato propio de dicha base de datos. Un controlador de base de datos permite a la aplicacin Web leer y manipular datos que, de otro modo, resultaran indescifrables.

- 15 -

Ing. Wagner Vicente Ramos

Proyectos Web
Mientras que un sistema de administracin de base de datos (DBMS o sistema de base de datos) es un software que se utiliza para crear y manipular bases de datos. Si tiene intencin de desarrollar pequeas aplicaciones de bajo coste, puede utilizar una base de datos basada en archivos, como las que permite crear Microsoft Access. En cambio, si desea desarrollar aplicaciones empresariales crticas, puede utilizar una base de datos basada en servidor, como las que permite crear Microsoft SQL Server, Oracle 9i o MySQL. 1.5. INSTALACIN DEL APPSERVER

La aplicacin tiene un peso de 15 MB La instalacin es un proceso sencillo para lo cual ejecutamos el instalador

Y a continuacin las diferentes especificaciones de pantalla.

Dar clic en Next (Siguiente)

- 16 -

Ing. Wagner Vicente Ramos

Proyectos Web

Clic en I Agree para aceptar las condiciones de Licencia de Uso del Software.

Clic en Next (Siguiente), indicando la conformidad de la carpeta contenedora del programa AppServer. - 17 Ing. Wagner Vicente Ramos

Proyectos Web

En este cuadro de dilogo se elije los componentes a instalar. En el cual tenemos: - Apache HTTP Server: Programa que ser el Servidor Web. - MySQL Database: Programa que ser el Servidor de Base de Datos. - PHP: Programa que ser el Servidor de Aplicaciones. - phpMyAdmin: Programa que facilitar la administracin de los anteriores. Clic en Next y continuamos.

- 18 -

Ing. Wagner Vicente Ramos

Proyectos Web
En el cuadro de dilogo anterior, se indica el nombre del servidor. Para nuestro caso escribimos localhost, que significa servidor local. Asignamos una direccin email por defecto y establecemos el puerto de comunicacin HTTP predeterminado (Puerto 80). Es necesario modificar dicho puerto en el caso que se quiera utilizar 2 o mas servidores web. Dar clic en Next para continuar.

En este cuadro de dilogo, debemos establecer el password de seguridad para el acceso a la base de datos MySQL, para lo cual escribimos dos veces: password. Dar clic en Install. Y tendremos que esperar hasta que termine el proceso de instalacin.

- 19 -

Ing. Wagner Vicente Ramos

Proyectos Web
Completando la instalacin se nos indica que se ejecutar el Apache y MySQL para su respectiva utilizacin.

Finalmente, para verificar si se ha instalado correctamente las herramientas WAMP, debemos seguir los siguientes pasos: - Ejecutar el programa navegador Internet Explorer. - En la barra de direcciones escribir http://localhost

Localhost, significa servidor local, y es un trmino que utilizan los mismos sistemas operativos, para ejecutar pginas dinmicas dentro del mismo computador. Por lo tanto, luego de escribir localhost y presionar enter, se debera visualizar la siguiente pgina principal.

- 20 -

Ing. Wagner Vicente Ramos

Proyectos Web

- 21 -

Ing. Wagner Vicente Ramos

Proyectos Web

Tema

02 :

SITIOS DINMICOS CON DREAMWEAVER


Igual que Dreamweaver nos ayuda a escribir pginas HTML estticas, tambin proporciona muchas herramientas para ayudarnos a desarrollar sitios dinmicos utilizando ASP, ASP.NET, ColdFusion, PHP o JSP. Dreamweaver puede ayudar a gestionar conexiones de base de datos, consultas compuestas a bases de datos y visualizaciones de informacin dinmica, todo dentro de su familiar entorno de diseo visual. 2.1. CONFIGURACIN DE UN SITIO DINMICO El primer paso para configurar un sitio dinmico en Dreamweaver es necesario definir el Servidor de Prueba. Dreamweaver necesita los servicios de un servidor de prueba para generar y mostrar contenido dinmico mientras trabaja. En un sitio esttico, cuando elegimos Vista Previa en el Navegador (F12), Dreamweaver inicia el navegador y le pasa la direccin local de la pgina actual: D:\PAG_ESTATICA\index.html Esto conecta con el navegador a travs del sistema de archivos de la computadora. Sin embargo, en un sitio dinmico no basta con ver las pginas en un navegador. Dreamweaver tiene que activar el Servidor Web, pasndole una solicitud http para que procese los archivos. Esto requiere una direccin como alguna de las siguientes: http://localhost/misitio/index.php http://127.0.0.1.8500/misitio/index.php http://www.midominio.com/index.php Esto conecta el servidor Web con el navegador para que las pginas se sirvan en lugar de abrirse a travs del sistema de archivos. Por lo tanto el Servidor de Prueba es en esencia un sitio remoto temporal. Ya que funciona casi de la misma forma que si la pgina estuviera en el Servidor de Hosting. Para configurar un sitio de Prueba se sigue los siguientes pasos: Ejecutar Sitio / Administrar Sitio

- 22 -

Ing. Wagner Vicente Ramos

Proyectos Web

Elegir la opcin Editar, y en la ventana de Definicin del sitio SISTEMAS UNH, elegimos Servidor de Prueba.

En Modelo de servidor, elegimos la tecnologa a utilizar, siendo para nuestro caso PHP y MySQL.

- 23 -

Ing. Wagner Vicente Ramos

Proyectos Web

En Acceso, debemos elegir Local/Red, para especificar que el servidor remoto ser local, el mismo que presenta otras opciones a personalizar - Carpeta de Servidor : Se debe especificar la carpeta raz predeterminada del servidor Web, desde donde se sirven todas las pginas dinmicas: Para el servidor Web Apache, que es nuestro caso. Primero, utilizando el explorador de Windows, creamos una carpeta dinamicas dentro de la carpeta raiz C:\AppServ\www Luego explorar y creamos la carpeta (publicacion) del servidor.

Teniendo entonces la ruta final de la carpeta de servidor de prueba: C:\AppServ\www\publicacion Pues, es aqu donde las pginas dinmicas creadas en el Servidor Local se actualizarn, para su visualizacin de localhost. Nota: Para el servidor Web Internet Information Server, la carpeta raiz es C:\Inetpub\wwwroot - Activar el Check de Actualizar automticamente. - En prefijo de URL: se debe especificar la carpeta contenedora http://localhost/publicacion/ - Y para finalizar, dar clic en Aceptar.

- 24 -

Ing. Wagner Vicente Ramos

Proyectos Web

Para comprobar la configuracin del servidor de prueba, nos ubicamos dentro del Servidor Local y la carpeta publicacion. Dentro del cual creamos el archivo (info.php) Abrimos dicha pgina y elegimos la opcin Mostrar Vista de Cdigo Posicionar el puntero del Mouse al final de <body> y dar enter para escribir el cdigo <?php phpinfo( ) ?> Como se muestra en la figura.

Luego guardamos la pgina (CTRL + S) y lo publicamos (F12).

- 25 -

Ing. Wagner Vicente Ramos

Proyectos Web
El resultado ser una pgina Web con una gran cantidad de informacin sobre el estado actual de PHP. Esto incluye informacin sobre las opciones de compilacin de PHP y sus extensiones, la versin del PHP, informacin del servidor y el entorno PHP, informacin de la versin del SO, rutas, valores de configuracin maestros y locales, cabeceras HTTP y la licencia de PHP. Como se muestra en el siguiente grfico.

2.2. PGINAS DINMICAS PHP PHP es el acrnimo de Hypertext Preprocessor (Preprocesador de Hipertexto). Se trata de un lenguaje interpretado de alto nivel embebido en pginas HTML y ejecutado en el servidor. Est muy orientado al desarrollo de aplicaciones web y permite insertar contenidos dinmicos en las pginas.

- 26 -

Ing. Wagner Vicente Ramos

Proyectos Web

Fue creado por Rasmus Lerdorf en 1995, y es muy verstil, potente, en constante expansin, y una de las cosas que ms importa: es gratuito y de cdigo abierto. 2.3. CARACTERSTICAS DEL LENGUAJE PHP 2.3.1. Es Multiplataforma: PHP funciona tanto en sistemas Unix o Linux con servidor web Apache como en sistemas Windows con Microsoft Internet Information Server, de forma que el cdigo generado por cualquiera de estas plataformas no debe ser modificado al pasar a la otra. Sin embargo, las mejores prestaciones del lenguaje se obtienen trabajando en un entorno Unix o Linux con servidor web Apache. La principal ventaja que aporta el uso conjunto de PHP y Apache es que, de esta manera, se puede compilar el intrprete PHP como un mdulo de Apache, consiguiendo as que la velocidad de ejecucin de una pgina PHP sea elevada y que el consumo de recursos sea bajo ya que el intrprete PHP se carga una sola vez en memoria. 2.3.2. Se ejecuta en el Servidor: Un lenguaje del lado del servidor es aquel que se ejecuta en el servidor Web justo antes de que se enve la pgina a travs de Internet al cliente. Las pginas que se ejecutan en el servidor pueden realizar accesos a bases de datos, conexiones en red, y otras tareas para crear la pgina final que ver el cliente. El cliente solamente recibe una pgina con el cdigo HTML resultante de la ejecucin de la pgina PHP. Ya que PHP toma el cdigo dentro de las pginas, lo ejecuta en el servidor y enva el resultado al cliente. El cliente no puede visualizar el cdigo del programa, slo su resultado. Veamos un ejemplo: Supongamos que una pgina web que reside en el servidor tiene por nombre "saludo.php". Cuando un navegador solicite al servidor la pgina "saludo.php", el servidor de web detectar, por la extensin .php, que esta pgina ha de enviarse primero al intrprete de PHP. ste recibe el contenido de la pgina y lo ejecuta. Como resultado de esta ejecucin (interpretacin) se genera una pgina HTML, que es la que enva al cliente a travs de Apache.

- 27 -

Ing. Wagner Vicente Ramos

Proyectos Web

Ejecucin de una pgina PHP: El navegador pide un documento al servidor, en el caso que este documento sea un archivo PHP, el archivo es interpretado y se enva su resultado al navegador. 2.3.3. La licencia de software es libre: PHP es un lenguaje basado en herramientas con licencia de software libre, es decir, no hay que pagar licencias, ni estamos limitados en su distribucin y, es posible ampliarlo con nuevas funcionalidades si as lo deseamos. 2.3.4. Tiene una extensa librera de funciones: PHP cuenta con una extensa librera de funciones que facilitan enormemente el trabajo de los desarrolladores. 2.3.5. Es compatible con bases de datos: Quiz la caracterstica ms fuerte de PHP sea su amplio soporte para una gran cantidad de bases se datos. Tiene acceso un gran nmero de gestores de bases de datos: Adabas D, dBase, Empress, Ingress, InterBase, FrontBase, DB2, Informix, mSQL, MySQL, ODBC, Oracle, PostgreSQL, Sybase, etc. 2.3.6. Expansin: PHP est alcanzando unos niveles de uso tan elevados que hacen que su conocimiento sea algo indispensable para los profesionales del desarrollo en Internet. Se estima que PHP es usado por cientos de miles de programadores y muchos millones de sitios informan que lo tienen instalado, sumando ms del 20% de los dominios en Internet.

- 28 -

Ing. Wagner Vicente Ramos

Proyectos Web
2.4. COMPARACIN ENTRE ASP Y PHP ASP Tecnologa propietaria de Microsoft Slo sobre plataformas Microsoft Gran coste econmico en software adicional. Ejecucin lenta debido a las comunicaciones COM.

PHP Filosofa Software Libre Varias Plataformas Muchas opciones incluidas de forma gratuita. Gran rapidez de ejecucin.

2.5. COMO INSERTAR CODIGO PHP Para escribir cdigo PHP dentro de una pgina html, tenemos varias alternativas: Incluir el cdigo entre <? y ?> Incluir el cdigo entre <?PHP y ?> Incluir el cdigo entre bloques <SCRIPT LANGUAGE="php"> y </SCRIPT> Por ejemplo: (ejemplo_01.php) Abrimos dicha pgina y elegimos la opcin Mostrar Vista de Cdigo Posicionar el puntero del Mouse al final de <body> y dar enter para escribir el cdigo <body> <?php echo "Mi primer ejemplo" ?> </body> </html> Debe quedar como se muestra en la figura:

Y en vista de diseo slo se ver el smbolo PHP. Para ejecutar se presiona F12 y se mostrar slo el resultado, de la ejecucin del cdigo PHP. Esto lo podemos notar, dando clic en el men Ver / Cdigo fuente, del Internet Explorer. Que slo muestra el resultado HTML al cliente, mas NO muestra el cdigo PHP escrito en la pgina dinmica.

- 29 -

Ing. Wagner Vicente Ramos

Proyectos Web

2.6. COMENTARIOS EN PHP PHP, como todo buen lenguaje de programacin, tambin permite realizar comentarios en el cdigo, que sern completamente ignorados por el intrprete de php. Para comentario de una sola lnea se debe utilizar la etiqueta // Por ejemplo: //Esto es un comentario SIMPLE de una lnea. Si por ejemplo queremos crear un comentario que ocupe mas de una lnea, podemos emplear las etiquetas: /* para abrir comentario, y */ para cerrar el comentario. Por ejemplo: /* Para este comentario me han dicho que Ocupe dos lneas */

- 30 -

Ing. Wagner Vicente Ramos