Anda di halaman 1dari 12

5.1.1.3 PHP.

Las siguientes definiciones han sido tomadas de:

- http://es.wikipedia.org/wiki/.php

- http://www.php.net/

PHP es un lenguaje de programación intrepretado, diseñado originalmente para


la creación de páginas web dinámicas. Es usado principalmente en
interpretación del lado del servidor (server-side scripting) pero actualmente
puede ser utilizado desde una interfaz de línea de comandos o en la creación
de otros tipos de programas incluyendo aplicaciones con interfaz gráfica
usando las bibliotecas Qt o GTL+.

PHP es un acrónimo recursivo que significa PHP Hypertext Pre-processor


(inicialmente PHP

Tools, o, Personal Home Page Tools). Fue creado originalmente por Rasmus
Lerdof en 1994; sin embargo la implementación principal de PHP es producida
ahora por The PHP Group y sirve como el estándar de facto para PHP al no
haber una especificación formal. Publicado bajo la PHP License, la Free

Software Fundation considera esta licencia como software libre.

PHP es un lenguaje interpretado de propósito general ampliamente usado y


que está diseñado especialmente para desarrollo web y puede ser embebido
dentro de código HTML. Generalmente se ejecuta en un servidor web,
tomando el código en PHP como su entrada y creando páginas web como
salida. Puede ser desplegado en la mayoría de los servidores web y en casi
todos los sistemas operativos y plataformas sin costo alguno. PHP se encuentra
instalado en más de 20 millones de sitios web y en un millón de servidores,
aunque el número de sitios en PHP ha empezado a compartir su cuota con
otros lenguajes desde hace unos años. Es también el módulo Apache más
popular entre las computadoras que utilizan Apache como servidor web. La
más reciente versión principal del PHP fue la versión 5.2.6 de 1 de mayo de
2008.

El gran parecido que posee PHP con los lenguajes más comunes de
programación estructurada, como C y Perl, permiten a la mayoría de los
programadores crear aplicaciones complejas con una curva de aprendizaje
muy corta. También les permite involucrarse con aplicaciones de contenido
dinámico sin tener que aprender todo un nuevo grupo de funciones.

Aunque todo en su diseño está orientado a facilitar la creación de página web,


es posible crear aplicaciones con una interfaz gráfica para el usuario, utilizando
la extensión PHP-Qt o PHP-GTK. También puede ser usado desde la línea de
órdenes, de la misma manera como Perl o Python pueden hacerlo, a esta
versión de PHP se la llama PHP CLI (Command Line Interface).

Cuando el cliente hace una petición al servidor para que le envíe una página
web, el servidor ejecuta el intérprete de PHP. Éste procesa el script solicitado
que generará el contenido de manera dinámica (por ejemplo obteniendo
información de una base de datos). El resultado es enviado por el intérprete al
servidor, quien a su vez se lo envía al cliente. Mediante extensiones es también
posible la generación de archivos PDF, Flash, así como imágenes en diferentes
formatos.

Permite la conexión a diferentes tipos de servidores de bases de datos tales


como MySQL, Postgres, Oracle, ODBC, DB2, Microsoft SQL Server, Firebird y
SQLite. Análisis, diseño e implementación de un sitio Web Departamental:
Creación, modificación y almacenamiento de contenidos

Adolfo Miguel Catalán García‐Manso Page 73

PHP también tiene la capacidad de ser ejecutado en la mayoría de los sistemas


operativos, tales

como UNIX (y de ese tipo, como Linux o Mac OS X) y Windows, y puede


interactuar con los servidores

de web más populares ya que existe en versión CGI, módulo para Apache, e
ISAPI.

PHP es una alternativa a las tecnologías de Microsoft ASP y ASP.NET (que utiliza
C# VB.NET

como lenguajes), a ColdFusion de la compañía Adobe (antes Macromedia), a


JSP/Java de Sun

Microsystems, y a CGI/Perl. Aunque su creación y desarrollo se da en el ámbito


de los sistemas libres,

bajo la licencia GNU, existe además un IDE (entorno de desarrollo integrado)


comercial llamado Zend

Studio. Recientemente, CodeGear (la división de lenguajes de programación de


Borland) ha sacado al

mercado un entorno integrado de desarrollo para PHP, denominado Delphi for


PHP. Existe un módulo

para Eclipse uno de los IDE más populares.

Historia:
PHP fue originalmente diseñado en Perl, en base a la escritura de un
grupo de CGI binarios

escritos en el lenguaje C por Rasmus Lerdorf en el año 1994 para mostrar su


C.V. y guardar ciertos

datos, como la cantidad de tráfico que su página web recibía. El 8 de junio de


1995 fue publicado

"Personal Home Page Tools".

Características:

• Favorables:

1. Es un lenguaje multiplataforma.

2. Capacidad de conexión con la mayoría de los manejadores de base de datos


que se utilizan

en la actualidad, destaca su conectividad con MySQL.

3. Capacidad de expandir su potencial utilizando la enorme cantidad de


módulos (llamados

ext's o extensiones).

4. Posee una amplia documentación en su página oficial, entre la cual se


destaca que todas

las funciones del sistema están explicadas y ejemplificadas en un único archivo


de ayuda.

5. Es libre, por lo que se presenta como una alternativa de fácil acceso para
todos.

6. Permite las técnicas de Progrmación Orientada a Objetos.

7. Biblioteca nativa de funciones sumamente amplia e incluida.

8. No requiere definición de tipos de variables.

9. Tiene manejo de excepciones (desde php5).

• Desfavorables:

Si bien PHP no obliga a quien lo usa a seguir una determinada metodología a la


hora de
programar (muchos otros lenguajes tampoco lo hacen), aún estando dirigido a
alguna en particular, el

programador puede aplicar en su trabajo cualquier técnica de programación


y/o desarrollo que le

permita escribir código ordenado, estructurado y manejable. Un ejemplo de


esto son los desarrollos que

en PHP se han hecho del patrón de diseño, MODELO VISTA CONTROLADOR (o


MVC), que permiten

separar el tratamiento y acceso a los datos, la lógica de control y la interfaz de


usuario en tres

componentes independientes

5.1.4 Base de Datos.

A la hora de seleccionar la base de datos, tendremos en cuenta sólo las


versiones gratuitas más

conocidas y robustas del mercado.

5.1.4.3 MySQL Server.

Las siguientes definiciones han sido tomadas de:

- http://es.wikipedia.org/wiki/MySQL/:

- http://www.mysql.com/

MySQL es la base de datos open source más popular. Su continuo desarrollo y


su creciente

popularidad están haciendo de MySQL un competidor cada vez más directo de


gigantes en la materia de

las bases de datos como Oracle.

MySQL es un sistema de administración de bases de datos (Database


Management System,

DBMS) para bases de datos relacionales.


Existen muchos tipos de bases de datos, desde un simple archivo hasta
sistemas relacionales

orientados a objetos. MySQL, como base de datos relacional, utiliza multiples


tablas para almacenar y

organizar la información.

MySQL fue escrito en C y C++ y destaca por su gran adaptación a diferentes


entornos de

desarrollo, permitiendo su ínteractuación con los lenguajes de programación


más utilizados como PHP,

Perl y Java y su integración en distintos sistemas operativos.

También es muy destacable, la condición de open source de MySQL, que hace


que su utilización

sea gratuita e incluso se pueda modificar con total libertad, pudiendo


descargar su código fuente (salvo

aquellas en las que se ofrece soporte dedicado). Esto ha favorecido muy


positivamente en su desarrollo

y continuas actualizaciones, para hacer de MySQL una de las herramientas más


utilizadas por los

programadores orientados a Internet.

Las principales características de este gestor de bases de datos son las


siguientes:

• Aprovecha la potencia de sistemas multiprocesador, gracias a su


implementación multihilo.

• Soporta gran cantidad de tipos de datos para las columnas.

• Dispone de API's en gran cantidad de lenguajes (C, C++, Java, PHP, etc).

• Gran portabilidad entre sistemas.

• Soporta hasta 32 índices por tabla.

• Gestión de usuarios y passwords, manteniendo un muy buen nivel de


seguridad en los datos. Análisis, diseño e implementación de un sitio Web
Departamental: Creación,

modificación y almacenamiento de contenidos


Adolfo Miguel Catalán García‐Manso Page 95

Características de la versión 5.0.22

• Un amplio subconjunto de ANSI SQL 99, y varias extensiones.

• Soporte a multiplataforma.

• Procedimientos almacenados.

• Triggers.

• Cursores.

• Vistas actualizables.

• Soporte a VARCHAR.

• INFORMATION_SCHEMA.

• Modo Strict.

• Soporte X/Open XA de transacciones distribuidas; transacción en dos fases


como parte de esto,

utilizando el motor InnoDB de Oracle.

• Motores de almacenamiento independientes (MyISAM para lecturas rápidas,


InnoDB para

transacciones e integridad referencial).

• Transacciones con los motores de almacenamiento InnoDB, BDB Y Cluster;


puntos de

recuperación (savepoints) con InnoDB.

• Soporte para SSL.

• Query caching.

• Sub-SELECTs (o SELECTs anidados).

• Réplica con un maestro por esclavo, varios esclavos por maestro, sin soporte
automático para

multiples maestros por esclavo.

• indexing y buscando campos de texto completos usando el motor de


almacenamiento MyISAM.
• Embedded database library.

• Soporte completo para Unicode.

• Conforme a las reglas ACID usando los motores InnoDB, BDB y Cluster.

• Shared-nothing clustering through MySQL Cluster.

La gran mayoría de gente usa este gestor en Internet por sus ventajas:

• Sin lugar a duda, lo mejor de MySQL es su velocidad a la hora de realizar las


operaciones, lo

que le hace uno de los gestores que ofrecen mayor rendimiento.

• Su bajo consumo lo hacen apto para ser ejecutado en una máquina con
escasos recursos sin

ningún problema.

• Las utilidades de administración de este gestor son envidiables para muchos


de los gestores

comerciales existentes, debido a su gran facilidad de configuración e


instalación.

• Tiene una probabilidad muy reducida de corromper los datos, incluso en los
casos en los que los

errores no se produzcan en el propio gestor, sino en el sistema en el que está.

• El conjunto de aplicaciones Apache-PHP-MySQL es uno de los más utilizados


en Internet en

servicios de foro y de buscadores.

8.1.3. HTML

Es el lenguaje de marcado predominante para la construcción de páginas web.


Es usado

para describir la estructura y el contenido en forma de texto, así como para

complementar el texto con objetos tales como imágenes.

HTML se escribe en forma de "etiquetas", rodeadas por corchetes angulares


(<,>).
HTML también puede describir, hasta un cierto punto, la apariencia de un
documento, y

puede incluir un script (por ejemplo JavaScript), el cual puede afectar al

comportamiento de navegadores web y otros procesadores de HTML.

En nuestra aplicación el documento HTML es el encargado de la visualización


web de

la misma. En él se muestra el mapa, la ventana de configuración, y el diagrama


de

barras. Desde él y usando JavaScript se lee toda la información a visualizar


desde

archivos en formato XML.

Un documento HTML se divide en dos grandes bloques:

1. El bloque <head>: define la cabecera del documento HTML. Esta cabecera


suele

contener información sobre el documento que no se muestra directamente al


usuario.

Como por ejemplo el título de la ventana del navegador. En él, nosotros hemos

declarado las variables globales y todas las funciones que usamos para el
desarrollo.

2. El bloque <body>: define el contenido principal o cuerpo del documento.


Esta es la

parte del documento html que se muestra en el navegador; dentro de esta


etiqueta

pueden definirse propiedades comunes a toda la página, como color de fondo y

márgenes. Dentro del cuerpo <body> podemos encontrar numerosas


etiquetas.

En este bloque, ayudándonos del software Dreamweaver (programa muy


utilizado en la

programación y diseño web), para facilitar nuestra tarea y así no tener que
escribir a

mano todas las etiquetas, hemos incluido todos elementos de nuestra


aplicación (tablas,
divs, títulos, list/menu, etc).

También se incluye en este bloque todo el código JavaScript que gestiona el

funcionamiento dinámico de la página.

8.1.6. JavaScript

JavaScript es un lenguaje de scripts desarrollado por Netscape para


incrementar las

funcionalidades del lenguaje HTML. Sus características más importantes son:

1. JavaScript es un lenguaje interpretado, es decir, no requiere compilación. El

navegador del usuario se encarga de interpretar las sentencias JavaScript


contenidas en

una página HTML y ejecutarlas adecuadamente.

2. JavaScript es un lenguaje orientado a eventos. Cuando un usuario pincha


sobre un

enlace o mueve el puntero sobre una imagen se produce un evento. Mediante


JavaScript

se pueden desarrollar scripts que ejecuten acciones en respuesta a estos


eventos.

3. JavaScript es un lenguaje orientado a objetos. El modelo de objetos de


JavaScript está

reducido y simplificado, pero incluye los elementos necesarios para que los
scripts

puedan acceder a la información de una página y puedan actuar sobre la


interfaz del

navegador.

En nuestra aplicación hemos incluido JavaScript de las dos formas posibles en


las que

esto se puede hacer:

1. Embebido en el código HTML, entre las etiquetas o tags <script> y


</script>.
2. Como archivo .js que se carga con la página HTML. Para ello, debe indicarse
en las

tags anteriores el nombre y ubicación del archivo .js que contiene el script
JavaScript.

<script src="../20_4v2/elabel.js" type="text/javascript"></script>

<script src="../20_4v2/diagram.js" type="text/javascript"></script>

La librería diagram.js es especialmente útil para mostrar un diagrama de


barras

dependiente de la entrada de datos que le introduzca el usuario o de datos


presentes en

una base de datos.

Para la construcción de este diagrama hay que tener en cuenta dos objetos:

1. Diagram object

Este objeto ofrece la posibilidad de dibujar un diagrama en una posición


definida con un

tamaño definido dentro del tamaño del documento.

Esta es la forma en la que hemos definido el diagrama en nuestra aplicación:

//Se indica la posición del diagrama en el documentos

D.SetFrame(45, 575, 685,575 + (vsimtrab.length*55) );

//Indica el rango de valors en los ejes x e y de la gráfica

D.SetBorder( 0, 100,-1, vsimtrab.length);

//Modifica el estilo del texto

D.Font="font-family:Verdana;font-weight:bold;font-
size:11pt;lineheight:15pt;line-width:15pt;"; Aplicación web para la
geolocalización y monitorización en tiempo real de los

recursos integrantes de una red Grid

_______ __________ ___________________________________

30

//Pone título al diagrama


D.SetText("","","Performance Graph");

D.YScale= 0;

D.XScale=" %";

D.SetGridColor("#8CACBB", "#CCCCCC");

D.Draw("#DEE7EC", "#000000",false);

2. The Box object

Este objeto lo usamos para mostrar una barra en la pantalla. Más en concreto
en el

diagrama. Con el propósito de encontrar la posición y el tamaño apropiado de


la barra.

Es posible mover, redimensionar, y borrar una barra después de haber sido


dibujada.

Esta es la forma en la que creamos las barras en nuestra aplicación:

for (i=0; i<vsimtrab.length; i++){

vj[i]=D.ScreenY(i+0,5);

bottom= D.ScreenX(0)

if (i%2==0) {

vBars[i] = new Box(bottom,vj[i]+12, D.ScreenX(vporciento[i]),

vj[i]-12, "#333366","mar.gif", "#FFFFFF","","#000000");

vBars2[i] = new Bar(bottom - 37,vj[i]-12,

D.ScreenX(vporciento[i]), vj[i]-12, ""," ", "#000000","");

else {

vBars[i] = new Box(bottom,vj[i]+12, D.ScreenX(vporciento[i]),

vj[i]-12, "#8894A4","verde.gif", "#FFFFFF","","#000000");

vBars2[i] = new Bar(bottom - 37,vj[i]-12,

D.ScreenX(vporciento[i]), vj[i]-12, ""," ", "#000000","");

{
{

Vamos creando una barra de cada color de forma alternativa.

El fragmento de código donde las barras se redimensionan para mostrar los


datos

actualizados en tiempo real es el siguiente:

vBars[i].ResizeTo(bottom,vj[i]-12,D.ScreenX(vporciento[i])-bottom,24);

Anda mungkin juga menyukai