Sie sind auf Seite 1von 26

DESARROLLO DE APLICACIONES PARA LA WEB USANDO PHP Y MYSQL

ANDRS CSPEDES MORALES

UNIVERSIDAD DE ANTIOQUIA FACULTAD DE INGENIERIA DEPARTAMENTO DE INGENIERIA DE SISTEMAS MEDELLN - COLOMBIA AGOSTO 2011

INTRODUCCION
En el mundo de las aplicaciones web, cada vez ms es usado el lenguaje PHP para desarrollar, potentes y atractivas pginas con diversas funcionalidades; debido a esta gran cantidad de funciones que poseen las aplicaciones web, es necesario guardar la informacin procesada y obtenida a partir de esta. Es por eso que se hace necesario el uso de un motor de base de datos, que para obtener una mejorar paridad con el lenguaje PHP generalmente se usa MySQL. Se invita al lector a que se introduzca en este mundo leyendo con ms detalle este documento, para que logre entender las bases del funcionamiento de una aplicacin web.

1 HISTORIA DEL PHP Y MYSQL


1.1 Qu es PHP?
PHP originalmente significaba "Personal Home Page", ya que fue creado en 1994 por Rasmus Lerdorf para rastrear a los visitantes de su currculum colgado en lnea. Como su utilidad y capacidad creci (comenz a ser utilizado en situaciones ms profesionales), lleg a significar "PHP: Hypertext Preprocessor". Segn el sitio web oficial, PHP es un " Lenguaje de scripting ampliamente utilizado para fines generales que es especialmente adecuado para el desarrollo Web y puede ser embebido en pginas HTML." Adems PHP es un lenguaje de scripting, que significa esto?, que a diferencia de la mayora de lenguajes de programacin, las instrucciones en PHP no se compilan y se generan otros archivos, se dice que es de scripting porque es un lenguaje interpretado, es decir un servidor apropiado para leer e interpretar cada instruccin, las lee y las ejecuta. Se debe agregar a esta definicin que PHP es un lenguaje tipo server-side, se refiere a que todo lo producido por PHP se realiza en el servidor a diferencia de lenguajes como Java o C# que sucede en la mquina del usuario. Este lenguaje corre sobre un servidor de aplicaciones como Apache o IIS (Microsoft), lo que permite que pueda correr en cualquier sistema operativo, ya que apache posee distribuciones en un gran nmero de S.O.

1.2 Qu es MySQL?
Es el motor de bases de datos de cdigo libre ms usado en el mundo. Actualmente MySQL es un gran competidor, con los gigantes motores de pago, como Microsoft SQL Server y Oracle. Como PHP, MySQL ofrece un excelente rendimiento, portabilidad y fiabilidad, con una curva de aprendizaje moderada y poco o ningn costo. De una manera ms formal, MySQL es un sistema de gestin de bases de datos relacionales (RDBMS), de cdigo abierto, como PHP, lo que significa que es libre de usar o incluso modificar. Mediante la incorporacin de una base de datos en una aplicacin Web, algunos de los datos generados por PHP pueden ser recuperados a partir de MySQL. Esto adems mueve el contenido del sitio a partir de una base esttica (no modificable) para una flexible, la flexibilidad es la clave para un sitio web dinmico. El software MySQL se compone de varias piezas, incluyendo el servidor MySQL (mysqld, encargado de administrar las bases de datos), el Cliente de MySQL (mysql, que le da una interfaz con el servidor), y numerosas utilidades de mantenimiento y otros fines.

2 VENTAJAS DE PHP Y MYSQL


2.1 Ventajas de Usar PHP
Es rpido, como el cdigo PHP est embebido en el cdigo HTML el tiempo de respuesta es mnimo. Es seguro, cuando se genera la respuesta en la pgina web, el usuario no ve el cdigo PHP. Es barato, mejor dicho gratis!, su licencia no tiene costo.

2.2 Ventajas de Usar MySQL


Es barato, pues su licencia es gratis, e incluso su versin comercial tiene un costo muy bajo. Soporta bases de datos grandes, entre los casos de xito de uso, con MySQL se han manejado bases de datos de hasta 50 millones de filas y archivos (data files) de 4GB de espacio. Amplio soporte tcnico, al ser tan usado existe un gran grupo de usuarios que brindan soporte gratuito por medio de listas electrnicas.

3 CMO FUNCIONAN PHP Y MYSQL?


El software PHP funciona en conjunto con el servidor web. El servidor web es el software que entrega las pginas web al mundo, cuando est instalado PHP, el servidor web se configura para esperar ciertas extensiones de archivo que contienen instrucciones en lenguaje PHP, a menudo la extensin es PHP, pero se puede usar cualquier extensin. Cuando el servidor web recibe una solicitud de un archivo con la extensin designada, enva las instrucciones HTML sin modificacin, es decir omite este fragmento de cdigo, pero las instrucciones PHP las procesa el software PHP antes de enviarlas al solicitante. Cuando se procesan estas instrucciones el servidor web slo enva el resultado al explorador web, las instrucciones en el lenguaje PHP no se incluyen, as que el cdigo es seguro y transparente para el usuario.

<?php echo Mi primer print; ?> , esta es la estructura ms bsica de un script


hecho en PHP, las etiquetas <?php ?> enmarcan el cdigo que debe ser interpretado por el servidor, y la funcin echo, es una instruccin de PHP que le indica al software que muestre el texto seguido a continuacin, el cual debe ir entre comillas. Para finalizar, cada sentencia o instruccin debe terminar con un (;).

Mientras, el software MySQL que consta de varias partes, la ms importante es el servidor MySQL, el cual es el administrador del sistema de bases de datos. Este maneja todas las instrucciones de su base de datos. El servidor MySQL debe estar funcionando y esperando rdenes antes de que el usuario pueda enviarle querys. Para hacer arrancar el servidor de MySQL, solo hay que encender el servidor, mediante un script o un software que lo gestione.

4 POR QU USAR PHP Y MYSQL?


MySQL y PHP han sido desarrollados pensando en la ingeniera web, los 2 frecuentemente se usan como equipo de trabajo, MySQL, brinda la parte de la base de datos y PHP la parte de la aplicacin que administra la base; el gran activo o patrimonio de una aplicacin est en su base de datos, pues es all donde se aloja toda la informacin, PHP realiza este trabajo muy bien, pues permite mostrar dinmicamente el contenido de una aplicacin solo manejando la base de datos sin importar los datos que esta contenga. A parte de las ventajas que se mencionaron anteriormente, este do tiene varias ventajas ms: Se comunican bien entre s, en sus libreras por defecto, PHP incluye caractersticas para comunicarse con MySQL, no se necesita conocer los detalles tcnicos, ese detalle lo puede obviar el programador. Son personalizables, es decir, ambos son de cdigo abierto lo cual le permite a los programadores modificar el software PHP y MySQL para adaptarlos a sus necesidades. Son rpidos, fueron diseados pensando en su velocidad como su principal cualidad, el combinar estas 2 aplicaciones permite entregar de una manera muy rpida pginas web dinmicas a los usuarios.

5 PREPARAR EL AMBIENTE DE TRABAJO


Para poder crear una aplicacin web en PHP, se necesitan esencialmente 3 componentes, el servidor, las libreras PHP y el motor MySQL; en este caso se hace uso del siguiente software.

5.1 Servidor Web (Apache)


Apache es el servidor web de cdigo libre ms usado en el mundo, pero por qu es tan usado? En primera medida porque es gratis, no hace falta decir ms, es muy seguro debido a que usa SSL para sus conexiones, es popular pues es usado para alojar ms del 60% de los sitios web; entre otras muchas ventajas ms. Para instalar el servidor Apache, se entra a la console de Linux para ejecutar el siguiente comando:

Sudo apt-get install apache2

El sistema operativo se conecta a internet y descarga los archivos necesarios, se deben aceptar las indicaciones de continuar con la tecla S y dar por terminado.

5.2 PHP
Para instalarlo se realiza un procedimiento similar, en la consola de Linux entramos el siguiente comando para descargar los archivos, solo se debe aceptar cada comprobacin e ingresar el password si el sistema as lo requiere.

Sudo apt-get install php5 libapache2-mod-php5 php5-cli php5-mysql


Esto es para indicarle que libreras de PHP adicionales se desean instalar.

Luego de ingresar el password, aceptar las solicitudes, el sistema har el resto.

Solo resta instalar el motor de bases de datos.

5.3 MySQL
En el terminal se ejecuta el siguiente comando:

Sudo apt-get install mysql-server

Se acepta la pregunta y se realiza la descarga, con esto termina la instalacin de las 3 herramientas bsicas para desarrollar en php usando mysql.

5.4 Procedimiento Alternativo


Para instalar el paquete AMP (apache, mysql y php), se puede hacer de otras 2 formas, una por terminal y otra opcin mediante un .tar que se instala. El proceso repetitivo de instalar estos 3 componentes, ha llevado a que varias comunidades de desarrollo faciliten este proceso, es por esto que para Linux esta una distribucin del software XAMPP. Qu es XAMPP? es una forma fcil de instalar la distribucin Apache que contiene MySQL, PHP y Perl, de ah sus siglas. El primer procedimiento alternativo es ejecutar el siguiente comando en el terminal, este instalar todos los componentes necesarios.

Sudo apt-get install tasksel

Despues de haber instalado la herramienta tasksel, se ejecuta el siguiente comando que instala el LAMP (Linux apache, mysql, php) que har todo por el usuario.

sudo tasksel install lamp-server

10

Todo esto sera el proceso para instalar los componentes necesarios de desarrollo en PHP y MySQL. Si se prefiere evitar usar el terminal de Linux, se debe instalar la distro para Linux de XAMPP.

6 EL ENTORNO DE DESARROLLO (IDE)


Para programar en PHP o cualquier lenguaje de desarrollo se debe hacer sobre un buen IDE o entorno integrado de desarrollo, para Linux existen cada vez ms, ya que el uso de este sistema entre los desarrolladores est teniendo una curva de crecimiento muy acelerada; pero es necesario usar un IDE con buen prestigio, para Windows se tiene Eclipse PDT como un buen candidato, y para Linux est el IDE Komodo (soporta Windows y Mac OS tambin), para descargarlo solo se debe entrar a la siguiente URL: http://www.activestate.com/komodo-ide/downloads , luego se pincha el botn azul con la descarga correspondiente a nuestro S.O.

Luego de descargarlo, se descomprime el paquete el cual trae un archivo llamado install.sh, el cual abre el terminal del Linux, solo resta indicar la ruta para instalar el software o solo oprimir Enter.

11

12

7 Desarrollo de la Aplicacin
Se va a crear una aplicacin bsica en PHP tipo CRUD, la cual permitir al usuario Crear, Leer, Actualizar y Borrar usuarios o registros de la base de datos, para comenzar primero se debe verificar que los componentes estn funcionando, en el navegador web por defecto digitar: http://localhost y ste debe mostrar alguna pgina indicando al usuario que el Apache est corriendo y puede interpretar las pginas. El servidor apache debe responder en la mayora de los casos mostrando un aviso IT WORKS!.

Seguido, se crea la base de datos que servir para comunicarse con la aplicacin por medio de las sentencias o querys, se ingresa a la URL: http://localhost/phpmyadmin/

13

En la seccin de MySQL localhost, se debe indicar el nombre de la base de datos y el tipo de cotejamiento, se puede dejar por defecto. Para este caso la llamaremos comunicacin y luego pinchar al botn crear.

Se ingresa a la base de datos pinchando en el nombre que aparece en la lista de la izquierda; como se ve en la imagen la base de datos no tiene tablas las estructuras bsicas para almacenar informacin en la base de datos, por lo tanto

14

en la pestaa SQL se ingresa y se escribe este query, lo que hace es crear una tabla EMPLEADOS con los campos indicados. CREATE TABLE `empleados` ( `CEDULA` decimal(10,0) NOT NULL, `NOMBRE` varchar(30) NOT NULL, `APELLIDOS` varchar(30) NOT NULL, `FECHA_NACIMIENTO` date DEFAULT NULL, `SEXO` varchar(1) DEFAULT NULL, `TELEFONO` varchar(255) DEFAULT NULL, `DIRECCION` varchar(255) DEFAULT NULL, `SUELDO` int(11) DEFAULT NULL, PRIMARY KEY (`CEDULA`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; El motor indica que la tabla fue creada exitosamente, con este paso ya tenemos el servidor apache funcionando y el motor de base de datos corriendo, cumpliendo su funcin de interpretar querys.

Ahora se debe crear la aplicacin, por motivos de agilidad en el trabajo, el entorno de desarrollo para la aplicacin ser Eclipse PDT el cual es mucho ms intuitivo y limpio.

15

Primero se debe crear el proyecto PHP, en la pestaa File > New > PHP Project. Se le da un nombre al proyecto y se acepta en el botn Finish.

El Proyecto sale al lado izquierdo con el nombre que se indic.

Lo primero es crear la maqueta de la aplicacin, o estructura principal, generalmente una pgina desarrollada en PHP contiene 3 partes, cabecera (header), footer y cuerpo (body), como PHP es un lenguaje de desarrollo para

16

generar contenido dinmico aqu est la esencia de este principio, el contenido de una pgina estar dividido en 3 archivos los cuales se cambian por separado haciendo que su contenido sea independiente y dinmicamente modificable. La estructura para el cdigo del proyecto se divide as, la carpeta includes contiene los archivos principales de cada pgina, como el header o footer; la carpeta CSS contiene los estilos para las paginas, la carpeta images como su nombre lo indica contiene las imgenes usadas en la aplicacin. Por el momento solo se tienen 3 carpetas y el archivo index.php que crearemos como entrada principal de la aplicacin.

Editamos el archivo, en este caso el index tiene 3 botones que redirigen la pgina a la accin correspondiente. La cabecera del archivo es una definicin segn los estndares de la W3C, que es la organizacin mundial que define los estndares para desarrollos web, en el body del archivo se tiene un DIV que es para agrupar los botones, y los 3 botones que apuntan a 3 archivos PHP definidos en el campo href.

17

Si se accede a la pgina, se puede ver algo como esto:

Para empezar a usar la base de datos se accede por el botn registro, para agregar un nuevo usuario que podr acceder al sistema.

18

El cdigo hace un import de hojas de estilos, llamada login-box.css, esto ayuda a darle una apariencia ms agradable a la aplicacin. La pgina se compone de un DIV para agrupar tambin los componentes, los cuales son 4 campos, la cedula, el usuario, la contrasea y el email, este cdigo genera la siguiente pgina.

19

Ahora sigue la parte principal de la aplicacin el funcionamiento del PHP y el MySQL en conjunto para generar un resultado. Al diligenciar los campos y oprimir el botn registro, en el cdigo de la pgina hay una estructura la cual es el formulario, este tiene definido en su campo action el archivo que invoca o ejecuta cada vez que se oprima el botn de envo, en este caso registro. El archivo que se invoca para este caso como se ve en la anterior imagen es validar_registro.php, que veremos a continuacin:

Empieza usando el dinamismo de PHP, haciendo uso de la funcin include, se agrega el cdigo que est contenido en el archivo config.php a la pgina, as puede hacer uso por ejemplo de las variables $host o $usuario que no estn definidas en el archivo pues ya vienen definidas por el include. Todas las variables que se envan del formulario se guardan en las 5 variables $id, $usuario, $password, $email y $fecha, que corresponden a los valores que irn en la tabla Usuarios. Luego de que se capturan los datos, se ejecuta el query INSERT INTO que es para agregar un nuevo registro a la tabla Usuarios, para que se pueda acceder a la tabla debe haber una conexin MySQL activa la cual est definida en el archivo config.php, miremos:

20

Para lograr una conexin a una base de datos local son necesarios los 4 campos definidos, el nombre del host o servidor, el nombre de la base de datos pues puede haber varias en el mismo servidor, el usuario y el password de acceso a la base. Continuando el proceso, se diligencian los datos y se hace clic en el botn registro, nos saldr un aviso indicando el xito de la operacin si todos los campos estn bien diligenciados.

21

Ahora se puede verificar de 2 maneras que el usuario si fue creado correctamente, por medio del phpmyadmin o simplemente logueando con los datos usados. Accediendo a la tabla usuarios del esquema comunicaciones, se encuentra que el usuario est creado.

Y tambin haciendo uso de la opcin Login.

22

El sistema le indica al usuario por su nombre que ya puede acceder al sistema.

23

De esta manera se comunican los archivos para operar los datos y generar un resultado al usuario.

index.php

registro.php

config.php

Validar_registro.php

El archivo config.php valida la conexin a la base de datos y le devuelve el foco de la aplicacin al archivo validar_registro.php, el cual termina de validar los campos y muestra un aviso al usuario correspondiente a la integridad de los datos entregados.

24

8 CONCLUSIONES
El uso de PHP y MySQL facilita notablemente el desarrollo web, ya que conjuntamente tienen muchas ventajas respecto a otros lenguajes; sus licencias gratuitas, rapidez, facilidad para el aprendizaje, son caractersticas muy destacadas para que este do sea tomado en cuenta a la hora de hacer pginas web. PHP a diferencia de los lenguajes de alto nivel, que son compilados, es interpretado lo que agiliza mucho su despliegue, pues solo es editar el archivo y guardar los cambios, estos se reflejan al instante; tambin cabe destacar su versatilidad en cuanto al manejo de variables pues PHP detecta el tipo de dato, evitando problemas de casting y dems. MySQL es un gran competidor para el gigante Oracle, tanto es as que la NASA lo usa para sus proyectos, estos casos de xito demuestran que aunque sea gratuito (tambin cuenta con licencias pagadas) es una muy buena herramienta.

Un punto a tener en cuenta es que, PHP es muy orientado hacia el contenido, permite desarrollar paginas muy atractivas al usuario, con este software el frontend de una aplicacin es muy vistoso, a diferencia de lenguajes como Java con el que generalmente no se crean interfaces (GUI) tan atractivas, pero si permite desarrollar aplicaciones muy robustas y seguras, tal vez este sea uno de los talones de Aquiles para PHP en cuanto a desarrollo empresarial.

25

9 BIBLIOGRAFIA
Gilmore, W. Jason, (2006). Beginning PHP and MySQL 5: From Novice to Professional, Second Edition Ullman, Larry, (2008). Visual Quickpro guide PHP 6 AND MYSQL 5 for dynamic web sites Valade, Janet, (2002). PHP Y MYSQL para Dummies. 2da Edicin.

26

Das könnte Ihnen auch gefallen