Академический Документы
Профессиональный Документы
Культура Документы
INTRODUCCIN
Por lo mismo nuestro proyecto est basado en aplicaciones web para el Colegio
Nacional Mixto Dr. Jos Mara Velasco Ibarra del Cantn El Guabo, que le
permitir su promocin, proceso de matriculacin y beneficios, por el cual es
necesario su anlisis, en el cual descubrimos los problemas que tena la
institucin con respecto al manejo de sus datos y como se estaba promocionando
en el rea institucional, para lo cual planteamos una solucin a estos
inconvenientes, a travs de diferentes metodologas y diagramas, lograremos
conseguir las mejores opciones para el logro de nuestro objetivo, como es la
creacin del Web Site para el ingreso de estudiantes a esta institucin.
El Colegio Nacional Mixto Dr. Jos Mara Velasco Ibarra del Cantn El Guabo es
la institucin ms prestigiosa del Cantn, nos hemos visto en la necesidad de
crear un Web Site con sus respectivas aplicaciones web con una base de datos
ubicada en un servidor, para desde ah tener control de sus procesos de
matriculacin y acceso a la informacin requerida.
El Web Site cuenta con un diseo e interfaz amigable para los estudiantes y
personas en general, en donde encontraremos, imgenes, videos, material
didctico, su ubicacin geogrfica, as como tambin el acceso a los servicios que
presta esta prestigiosa institucin.
1
UNIVERSIDAD TECNICA DE MACHALA
OBJETIVOS
Objetivo General:
Objetivo Especficos:
Realizar todos los formularios de registros donde nos permita ingresar los
datos primordiales de forma completa.
2
UNIVERSIDAD TECNICA DE MACHALA
JUSTIFICACIN
Los Web Sites y las aplicaciones web a nivel nacional forman parte de algunas
instituciones educativas que han puesto en consideracin las mismas para estar a
la par de los avances tecnolgicos que se implantan a nivel educativo.
3
UNIVERSIDAD TECNICA DE MACHALA
Por lo expuesto hemos considerado factible abordar este tema, del cual pedimos
su respectiva aprobacin.
4
UNIVERSIDAD TECNICA DE MACHALA
PROBLEMAS
PROBLEMA CENTRAL
PROBLEMAS ESPECFICOS
5
UNIVERSIDAD TECNICA DE MACHALA
PREGUNTA CIENTFICA
Central
Particulares:
6
UNIVERSIDAD TECNICA DE MACHALA
ALCANCE
Resultados
Portal web con un diseo amigable y de fcil manejo para los usuarios
y personal administrativo de la institucin.
7
UNIVERSIDAD TECNICA DE MACHALA
2.1.1 Misin
2.1.2 Visin
2.1.3 Paradigma
8
UNIVERSIDAD TECNICA DE MACHALA
2.1.4 Objetivo
La iniciacin tubo impulso cuando rega nuestro pas el Dr. Jos Mara
Velasco Ibarra; cuyo Ministro de Educacin y Cultura era en ese entonces el
Dr. Augusto Solrzano Constantino, como subsecretario de educacin el
seor Augusto Luis Moscoso y siendo alcalde de la provincia el abogado
Luis Alberto Len Len
9
UNIVERSIDAD TECNICA DE MACHALA
medida que han pasado los aos se han ido incrementado cada vez mas. La
iniciacin de las labores funcionales tiene como marco las instalaciones de la
Escuela de Nios General Manuel Serrano, en ese entonces ubicados en
las calles 9 de Octubre y Eloy Alfaro, donde funciono por el lapso de un ao,
para luego continuar en la casa Municipal Parroquial, en donde permaneci
por el lapso de 6 aos, hasta la fecha que emite el decreto de giro poltico de
nuestro lugar natal , la cantonizacin de El Guabo, luego de este
acontecimiento el establecimiento se traslado a los edificios de la escuela
Zoila Ugarte de Landivar en jornada vespertina, finalmente se traslado a su
propio local ubicado en la Va Panamericana Sur, en el desvi a Pasaje, local
que est ha servicio de la comunidad de El Guabo y de la provincia desde el
mes de abril de 1984.
En primer lugar como Rector fundador fue el Dr. Vinicio Sarmiento Alvarado
desde el 12 de noviembre de 1970, radicado en esta ciudad por largos aos,
como secretaria titular fue nombrada la Srta. Miryam Snchez y como auxiliar
la Srta. Dolly Serrano Jcome. Los primeros maestros fueron: Sr. Sal Paz
mio, Sra. Mercede Orellana, Sr. Mauro Muoz, Sr. Volter Medina, Sra. Julia
Jaramillo, Sr. Rodolfo Aguirre. Alumnos matriculados en el ao 1.971-1972
103 divididos en dos paralelos uno para primer curso y otro para segundo.
En este ao aumenta dos profesores y un conserje el Sr. Miguel Mesones,
1972-1973 fueron matriculados 165 alumnos. En este ao los seores
profesores: Voltaire Medina Y Mauro Muoz solicitaron el cambio, ingresan
nuevos profesores: Marlene Serrano de Vogueley, Julin Reyes, sr, Hernn
Rosales Sra. Rosario Palacios y como conserje el Sr. Rmulo Lojas.
10
UNIVERSIDAD TECNICA DE MACHALA
11
UNIVERSIDAD TECNICA DE MACHALA
Beltrn Romero Jos Vicente, Capa Faras Gabriel Agustn, Espinoza Armijos
Florencio Ilvano, Gmez Izurieta Helen Elaine, Guerra Izurieta Carlos
Gonzalo, Guerra Izurieta Marco Gabriel, izquierdo Mesones Darwin Colon,
Izurieta Jan Norma Irlanda, Orellana lvarez Guillermo Santo, Orellana
Quevedo ngela Mara, Ortiz Prez alba Marlene, Ortiz Prez Lilia Piedad,
Solano Solano Luis Antonio., Verdi Barros Rubn Benjamn, Zamora Ruiz
Rosa Dalila.
En este ao el colegio tiene sus smbolos patrios creados por la iniciativa del
Dr. Vinicio Sarmiento la bandera y el escudo.
12
UNIVERSIDAD TECNICA DE MACHALA
Nuevos maestros: que ingresan: Sr. Rubn Verdi, Sr. Tefilo Chamba, Sra.
Elva Verdi, Sr. Hernn Valverde, Sr. Mauro Valverde, Sr. Juan Reyes, .Sr.
Sra. Elena Mora.
El Ing. Carlos Loayza Snchez en unin con el Concejo Directivo Logra que
la direccin nacional de construcciones escolares DINACE efecten visitas
con el objetivo de realizar los planos previos a la construccin de las oficinas
Administrativas, el bloque para los laboratorios y los bloques de las aulas y
talleres., Se grada de 11 estudiantes en Humanidades modernas.
13
UNIVERSIDAD TECNICA DE MACHALA
Promocin Q.B. 17, S.E. 19., 1992-1993- promocin Q.B. 17. F.M. 11., S.E.
19., 1993-1994 promociones Q.B. 13 F.M. 1. S.E. 18., 1994-1995.- promocin
Q.B. 14, FM 12 S.E. 20.- En su administracin logro la construccin de
algunos bloques de aulas, cerramientos de linderos, en cementado del
ingreso exterior del plantel, culmino con la construccin del saln de actos
14
UNIVERSIDAD TECNICA DE MACHALA
15
UNIVERSIDAD TECNICA DE MACHALA
2006 -2007 se realizo por parte del comit central de padres de familia, la
readecuacin de una loza que se encontraba en mal estado y la construccin
de 2 aulas en la parte superior.
16
UNIVERSIDAD TECNICA DE MACHALA
17
UNIVERSIDAD TECNICA DE MACHALA
2.1.6 Organigrama
18
UNIVERSIDAD TECNICA DE MACHALA
2.1.7 Ubicacin
19
UNIVERSIDAD TECNICA DE MACHALA
2.2.4 Modalidades
20
UNIVERSIDAD TECNICA DE MACHALA
Internet, la red de redes, nace a mediados de la dcada de los setenta, bajo los
auspicios de DARPA, la Agencia de Proyectos Avanzados para la Defensa de
Estados Unidos. DARPA inici un programa de investigacin de tcnicas y
tecnologas para unir diversas redes de conmutacin de paquetes, permitiendo
as a los ordenadores conectados a estas redes comunicarse entre s de forma
fcil y transparente.
21
UNIVERSIDAD TECNICA DE MACHALA
22
UNIVERSIDAD TECNICA DE MACHALA
23
UNIVERSIDAD TECNICA DE MACHALA
Las directivas de peticin de informacin que define HTTP 1.1 (la versin
considerada estable y al uso) son:
24
UNIVERSIDAD TECNICA DE MACHALA
Cabe destacar que todos los recursos que sean servidos mediante HTTP debern
ser referenciados mediante una URL (universal resource locators).
Las peticiones en HTTP pueden realizarse usando dos mtodos. El mtodo GET,
en caso de enviar parmetros junto a la peticin, las enviara codificadas en la
URL. Por su parte, el mtodo POST, en caso de enviarlos, lo hara como parte del
cuerpo de la peticin.
25
UNIVERSIDAD TECNICA DE MACHALA
Lnea de peticin
Cabecera de peticin
Identificador: valor
Parmetros de peticin
Una peticin HTTP puede tambin contener parmetros, como res- puesta, por
ejemplo, a un formulario de registro, a una seleccin de producto en una tienda
electrnica, etc. Estos parmetros pueden pasarse de dos formas:
26
UNIVERSIDAD TECNICA DE MACHALA
Para codificar los parmetros como parte de la URL, stos se aaden a la URL
detrs del nombre del recurso, separados de ste por un carcter?. Los diferentes
parmetros se separan entre s por el carcter&. Los espacios se sustituyen por +.
Por ltimo, los caracteres especiales (los mencionados antes de&,+ y?, as como
los caracteres no imprimibles, etc.) se representan con %xx, donde xx representa
al cdigo ASCII en hexadecimal del carcter.
Por ejemplo:
Host: www.ejemplo.com
User-Agent: Mozilla/4.5 [en]
Accept: image/gif, image/jpeg, text/html
Accept-language: en
Accept-Charset: iso-8859-1
Para pasar los parmetros como datos extra de la peticin, stos se envan al
servidor como cuerpo de mensaje en la peticin.
Host: www.ejemplo.com
Accept-language: en
Accept-Charset: iso-8859-1
nombre=Perico+Palotes&OK=1
27
UNIVERSIDAD TECNICA DE MACHALA
Cabe destacar que para pasar los parmetros como cuerpo de la peticin, sta
debe realizarse como POST y no como GET, aunque una peticin POST tambin
puede llevar parmetros en la lnea de peticin. Los parmetros pasados como
cuerpo de la peticin estn codificados, al igual que en el ejemplo anterior, como
URL, o pueden usar una codifica- cin derivada del formato MIME (multipurpose
internet mail extensions), en lo que se conoce como codificacin multiparte.
Host: www.ejemplo.com
Accept-language: en
Accept-Charset: iso-8859-1
Content-Type: multipart/form-data,
delimiter=----ALEATORIO----
----ALEATORIO----
Perico Palotes
----ALEATORIO----
Content-Disposition: form-data; name=OK
1----ALEATORIO------
Esta codificacin es exclusiva del mtodo POST. Se emplea para enviar ficheros
al servidor.
Respuestas en HTTP
28
UNIVERSIDAD TECNICA DE MACHALA
Las respuestas en HTTP son muy similares a las peticiones. Una respuesta
estndar a una peticin de una pgina sera similar a lo siguiente:
HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Length: 428
Connection: close
<HTML>
...
En ella podemos observar que la primera lnea nos responde con la versin del
protocolo empleada para enviarnos la pgina, seguida de un cdigo de retorno y
una frase de retorno. El cdigo de retorno puede adoptar uno de los siguientes
valores:
29
UNIVERSIDAD TECNICA DE MACHALA
Despus del estatus aparece una serie de campos de control, con el mismo
formato que en las cabeceras de la peticin que nos informan del contenido
(fecha de creacin, longitud, versin del servidor, etc.). A continuacin viene el
contenido solicitado.
El otro puntal del xito del WWW ha sido el lenguaje HTML (hypertextmark-up
language). Se trata de un lenguaje de marcas (se utiliza insertando marcas en el
interior del texto) que nos permite represen tar de forma rica el contenido y
tambin referenciar otros recursos (imgenes, etc.), enlaces a otros documentos
(la caracterstica ms destacada del WWW), mostrar formularios para
posteriormente procesarlos, etc.
El esquema de funcionamiento de los CGI tena un punto dbil: cada vez que
recibamos una peticin, el servidor web lanzaba un proceso que ejecutaba el
30
UNIVERSIDAD TECNICA DE MACHALA
programa CGI. Como, por otro lado, la mayora de CGI estaban escritos en algn
lenguaje interpretado (Perl, Python, etc.) o en algn lenguaje que requera runtime
environment (VisualBasic, Java, etc.), esto implicaba una gran carga para la
mquina del servidor. Adems, si la web tena muchos accesos al CGI, esto
supona problemas graves.
Por ello se empiezan a desarrollar alternativas a los CGI para solucionar este
grave problema de rendimiento. Las soluciones vienen principalmente por dos
vas. Por un lado se disean sistemas de ejecucin de mdulos ms integrados
con el servidor, que evitan que ste tenga que instanciar y ejecutar multitud de
programas. La otra va consiste en dotar al servidor de un intrprete de algn
lenguaje de programacin (RXML, PHP, VBScript, etc.) que nos permita incluir las
pginas en el cdigo de manera que el servidor sea quien lo ejecute, reduciendo
as el tiempo de respuesta.
Otra de las tecnologas que ms xito ha obtenido y una de las que ms se utiliza
en Internet es el lenguaje de programacin interpretado por el servidor PHP. Se
trata de un lenguaje que permite incrustar HTML en los programas, con una
31
UNIVERSIDAD TECNICA DE MACHALA
32
UNIVERSIDAD TECNICA DE MACHALA
1. Espera peticiones en el puerto TCP asignado (el estndar para HTTP es el 80).
5. Vuelve al punto 2.
Un servidor web que siguiese el esquema anterior cumplira los requisitos bsicos
de los servidores HTTP, aunque, eso s, slo podra servir ficheros estticos.
A partir del esquema anterior se han diseado y construido todos los programas
servidores de HTTP que existen, variando slo el tipo de peticiones (pginas
estticas, CGI, Servlets, etc.) que pueden atender, en funcin de que sean o no
multiproceso, multihilados, etc. A continuacin detallaremos algunas de las
caractersticas principales de los servidores web, que extienden, obviamente el
esquema anterior.
Todos los servidores web deben incluir, como mnimo, la capacidad para servir los
ficheros estticos que se encuentren en alguna parte concreta del disco. Un
requisito imprescindible es la capacidad de especificar qu parte del disco se
servir. No resulta en absoluto recomendable que el servidor nos obligue a usar
un directorio concreto, si bien puede tener uno por defecto.
33
UNIVERSIDAD TECNICA DE MACHALA
34
UNIVERSIDAD TECNICA DE MACHALA
RADIUS, LDAP, etc.). Si usamos un sistema operativo como Linux, que dispone
de una infraestructura de autenticacin como PAM (pluggable authentication
modules), podemos usar esta funcionalidad como modo de autenticacin del
servidor web, permitindonos as usar los mltiples mtodos disponibles en PAM
para autenticar contra diversos sistemas de seguridad.
La mayora de servidores web ofrecen soporte para CGI (cabe recordar que los
CGI son el mtodo ms antiguo y simple de generacin de contenido dinmico).
Muchos ofrecen soporte para algunos lenguajes de programacin (bsicamente
interpretados) como PHP, JSP, ASP, Pike, etc. Es altamente recomendable que el
servidor web que utilicemos proporcione soporte para alguno de estos lenguajes,
siendo uno de los ms utilizados PHP, sin tener en cuenta JSP, que usualmente
requiere un software externo al servidor web para funcionar (como por ejemplo,
un contenedor de Servlets). La oferta en este campo es muy amplia, pero antes
de escoger un lenguaje de programacin de servidor tenemos que plantearnos si
deseamos un lenguaje muy estandarizado para que nuestra aplicacin no
dependa de un servidor web o arquitectura concreta o si, por el contrario, la
portabilidad no es una prioridad y s lo es alguna prestacin concreta que pueda
ofrecernos algn lenguaje de programacin concreto.
35
UNIVERSIDAD TECNICA DE MACHALA
Son muchas las prestaciones que nos ofrecen los servidores web para
diferenciarse de la competencia. Algunas de ellas resultan realmente tiles y
pueden decidir la eleccin de servidor web. Debemos ser conscientes, no
obstante, de que si usamos algunas de estas caractersticas, o si stas se
convierten en imprescindibles para nosotros, ello nos puede obligar a usar un
determinado servidor web aunque en algn momento determinado deseemos
cambiar.
Spelling (Apache). Esta prestacin de Apache nos permite definir una pgina de
error para los recursos no encontrados que sugiera al usuario algunos nombres
de recurso parecidos al que solicitaba para el caso de que hubiese cometido un
error al escribir.
Status (Apache). Nos proporciona una pgina web generada por el servidor donde
ste nos muestra su estado de funcionamiento, nivel de respuesta, etc.
(RXML), comandos para realizar accesos a bases de datos SQL desde las
propias pginas HTML.
36
UNIVERSIDAD TECNICA DE MACHALA
Kill Frame (Roxen). Enva con cada pgina web servida un cdigo que evita que
nuestra web quede como frame (enmarcada) dentro de otra pgina web.
Algunos servidores web nos permiten usarlos como servidores intermedios (proxy
servers). Podemos usar los servidores intermedios para propsitos muy variados:
37
UNIVERSIDAD TECNICA DE MACHALA
Existen mdulos para diversos servidores web que nos permiten usar los como
frontales para otros servidores especializados en otro tipo de servicio.
38
UNIVERSIDAD TECNICA DE MACHALA
2.5.1 Apache
Estos voluntarios se conocen como el Apache Group. Adems del Apache Group,
cientos de personas han contribuido al proyecto con cdigo, ideas y
documentacin.
stos, usando el servidor NCSA 1.3 como base de trabajo, aadieron todas las
correcciones de errores publicadas y las mejoras ms valiosas que encontraron y
probaron el resultado en sus propios servidores. Posteriormente publicaron lo que
sera la primera versin oficial del servidor Apache (la 0.6.2, de Abril de 1995).
Casualmente, en esas mismas fechas, NCSA reemprendi el desarrollo del
servidor NCSA.
39
UNIVERSIDAD TECNICA DE MACHALA
En este momento el desarrollo de Apache sigui dos lneas paralelas. Por un lado,
un grupo de los desarrolladores sigui trabajando sobre el Apache 0.6.2 para
producir la serie 0.7, incorporando mejoras, etc. Un segundo grupo reescribi por
completo el cdigo, creando una nueva arquitectura modular. En julio de 1995 se
migraron a esta nueva arquitectura las mejoras existentes para Apache 0.7,
hacindose pblico como Apache 0.8.
Una vez dentro de este directorio, continuaremos con los siguientes pasos:
$ ./configure
40
UNIVERSIDAD TECNICA DE MACHALA
$ make
El alumno debe recordar que para compilar Apache requeriremos, como mnimo,
GNU Make y GNU CC.
$ make install
Una vez instalado en su lugar, dispondremos, dentro del subdirectorio bin del
directorio de instalacin, el que hemos especificado con prefix, un programa
llamado apachectl que nos permitir controlar el servidor. Para iniciar ste:
$ ./apachectl start
Para detenerlo:
$ ./apachectl stop
Redhat/Fedora
41
UNIVERSIDAD TECNICA DE MACHALA
Debian
apt-get install apache que nos instalar Apache en la ltima versin o bien lo
actualizar, si ya lo tenamos instalado.
42
UNIVERSIDAD TECNICA DE MACHALA
Parmetros globales
Directivas de funcionamiento
Hosts virtuales
Algunos parmetros son generales para el servidor, mientras que otros se pueden
configurar de manera independiente para cada conjunto de directorios o ficheros o
para un servidor virtual concreto. En estos casos, los parmetros se encuentran
ubicados dentro de secciones donde se indica el mbito de aplicacin del
parmetro.
43
UNIVERSIDAD TECNICA DE MACHALA
<Proxy>: slo se aplican los parmetros a las peticiones de proxy (requiere, por
tanto, mod proxy instalado) que coincidan con la especificacin de URL.
1.<Directory>y .htaccess
2.<DirectoryMatch>y <Directory>
3.<Files>y <FilesMatch>
4.<Location>y <LocationMatch>
<Directory /home/*/public_html>
Options Indexes
</Directory>
Order allow,deny
44
UNIVERSIDAD TECNICA DE MACHALA
</FilesMatch>.
Directivas principales
45
UNIVERSIDAD TECNICA DE MACHALA
ServerName www.uoc.edu:80
ServerName 192.168.1.1:80
46
UNIVERSIDAD TECNICA DE MACHALA
Por ejemplo:
UserDir: esta directiva nos permite indicar a Apache que un subdirectorio del
directorio de trabajo de los usuarios del sistema sirva para almacenar su pgina
personal.
Por ejemplo:
http://www.uoc.edu/test/indice.html
Directivas de seccin
47
UNIVERSIDAD TECNICA DE MACHALA
Allow,Deny. El acceso est denegado por defecto y slo podrn entrar los
clientes que cumplan las especificaciones de Allow y no cumplan las de Deny.
Deny,Allow. El acceso est permitido por defecto y slo podrn entrar los clientes
que no cumplan las especificaciones de Deny o cumplan las de Allow.
Servidores virtuales
Apache soporta servir diversos sitios web con un slo servidor. Para ello
proporciona facilidades de creacin de dominios virtuales en funcin de diversas
direcciones IP o diversos nombres por IP.
Apache fue uno de los primeros servidores en soportar servidores virtuales sin IP,
en funcin de nombre. Esta capacidad simplifica mucho la administracin de los
servidores, adems de suponer un ahorro importante de direcciones IP,
normalmente escasas. Los servidores virtuales por nombre son totalmente
transparentes para el cliente, con la nica posible excepcin de aquellos
navegadores muy antiguos que no enven la cabecera Host: con las peticiones.
Para atender a diversos servidores virtuales, cada uno con una direccin IP,
utilizaremos la seccin de configuracin VirtualHost. Con esta seccin definiremos
cada uno de los servidores con su propia configuracin y direccin IP.
48
UNIVERSIDAD TECNICA DE MACHALA
<VirtualHost 192.168.1.1>
ServerAdmin webmaster@uoc.edu
DocumentRoot /web/uoc
ServerName www.uoc.edu
ErrorLog /web/logs/uoc_error_log
TransferLog /web/logs/uoc_access_log
</VirtualHost>
<VirtualHost 192.168.254.254>
ServerAdmin webmaster@asociados.uoc.edu
DocumentRoot /web/asociados
ServerName asociados.uoc.edu
ErrorLog /web/logs/asociados_error_log
TransferLog /web/logs/asociados_access_log
</VirtualHost>
Como podemos ver, este ejemplo define dos servidores web, cada cual con una
IP y un nombre diferente. Ambos tienen su propio DocumentRoot, etc.
Para utilizar servidores virtuales por IP, es necesario que el sistema servidor tenga
configuradas en el sistema operativo las diversas direcciones IP que hay que
servir.
49
UNIVERSIDAD TECNICA DE MACHALA
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@uoc.edu
ServerName www.uoc.edu
DocumentRoot /web/uoc
ErrorLog /web/logs/uoc_error_log
TransferLog /web/logs/uoc_access_log
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@uoc.edu
ServerName asociados.uoc.edu
DocumentRoot /web/asociados
ErrorLog /web/logs/asociados_error_log
TransferLog /web/logs/asociados_access_log
</VirtualHost>.
50
UNIVERSIDAD TECNICA DE MACHALA
NameVirtualHost 192.168.1.1
NameVirtualHost 172.20.30.40
</VirtualHost>
<VirtualHost _default_>
DocumentRoot /www/defecto
</VirtualHost>
51
UNIVERSIDAD TECNICA DE MACHALA
Existen multitud de servidores HTTP de cdigo libre, pero casi todos ellos han
quedado eclipsados por la fama de Apache. Algunos de estos servidores
presentan caractersticas que les dotan de gran inters.
2.6.1. AOLServer
AOLServer tiene una amplia base de usuarios, gracias sobre todo a su integracin
con OpenACS, un sistema de gestin de contenidos muy potente, de cdigo libre,
desarrollado inicialmente por una empresa llamada ArsDigita y posteriormente
liberado bajo licencia GPL. El binomio AOLServer-OpenACS constituye la
infraestructura de proyectos web tan complejos y potentes como dotLRN (un
campus virtual universitario de cdigo libre).
52
UNIVERSIDAD TECNICA DE MACHALA
Es de cdigo libre.
Soporte grfico integrado que permite, con slo algunas etiquetas de RXML (la
extensin de HTML de Roxen), generar imgenes, ttulos, grficas, etc.
Roxen es uno de los pocos casos en los que un excelente producto (ha sido
siempre uno de los servidores web ms estables, rpidos y con mayor nmero de
prestaciones y facilidades) no ha triunfado, ya que siempre ha sido eclipsado por
Apache.
53
UNIVERSIDAD TECNICA DE MACHALA
2.6.3. thttpd
2.6.4. Jetty
54
UNIVERSIDAD TECNICA DE MACHALA
2.7 Javascript
2.7.1 Concepto
<HTML>
<HEAD>
<SCRIPT LANGUAGE=Javascript>
function Saludo()
alert(Hola mundo);
</SCRIPT>
</HEAD>
<BODY>
<FORM>
55
UNIVERSIDAD TECNICA DE MACHALA
<INPUT TYPE=buttonNAME=Boton
VALUE=Pulsar onClick=Saludo()>
</FORM>
</BODY>
</HTML>
<SCRIPT LANGUAGE=Javascript1.1>
...
</SCRIPT>
56
UNIVERSIDAD TECNICA DE MACHALA
Nuestro cdigo:
function Saludo()
alert(Hola mundo);
<FORM>
<INPUT TYPE=buttonNAME=Boton
VALUE=Pulsar onClick=Saludo()>
</FORM>
57
UNIVERSIDAD TECNICA DE MACHALA
Otro punto que conviene tener presente es que los smbolos (nombres de
variables, funciones, etc.) son sensibles a cambios de maysculas/minsculas.
Comentarios
/*
*/
Literales
Enteros 123
Reales 0.034
estaciones= [Otoo,Invierno,Primavera,Verano];.
Caracteres especiales
58
UNIVERSIDAD TECNICA DE MACHALA
cadenas de caracteres
enteros
reales
booleanos
vectores
matrices
referencias
objetos
59
UNIVERSIDAD TECNICA DE MACHALA
Variables
No hace falta declaracin explcita de las variables, ya que stas son globales. Si
deseamos una variable local, debemos declararla usando la palabra reservada
var y hacerlo en el cuerpo de una funcin. En una declaracin de variable
mediante var podemos declarar diversas variables, separando los nombres de
stas mediante ,.
Las variables tomarn el tipo de datos a partir del tipo del objeto de datos que les
asignemos.
Referencias
Javascript elimina del lenguaje los punteros a memoria, pero mantiene el uso de
referencias. Una referencia funciona de forma muy similar a un puntero de
memoria, pero obviando para el programador las tareas relacionadas con gestin
de memoria que provocaban tantos errores en los punteros dentro de otros
lenguajes.
function soloExplorer()
...
function soloMozilla()
...
60
UNIVERSIDAD TECNICA DE MACHALA
function toda()
var funcion;
if(navegadorMozilla)
funcion=soloMozilla;
else
funcion=soloExplorer;
funcion();
Vectores
Como podemos ver en el cdigo siguiente, los Array de Javascript son objetos (de
tipo Array) los cuales pueden tener como ndice de acceso un valor no numrico y
de los que no debemos declarar las medidas inicialmente. No disponemos de un
tipo de vector n dimensional, pudiendo usar para ello vectores de vectores.
miEstupendoVector[30] = contenido;.
//dimensionamos un vector
61
UNIVERSIDAD TECNICA DE MACHALA
capitales[Francia]= Pars;
Operadores
Igualdad==
Desigualdad! =
Igualdad estricta===
Desigualdad estricta!==
Menor que<
Mayor que>
Negacin!
Y&&
||
62
UNIVERSIDAD TECNICA DE MACHALA
Bifurcaciones condicionales
if (condicion)
<codigo>
else
<codigo>
switch(valor)
case valortest1:
<codigo>
break;
case valortest2:
<codigo>
break;
...
default:
<codigo>
63
UNIVERSIDAD TECNICA DE MACHALA
Bucles
while(condicion)
<codigo>
do{<codigo>
} while(condicion);
<codigo>
<codigo>
Por otro lado tenemos with, que proporcionar una mayor comodidad cuando
tengamos que tratar con mltiples propiedades de un mismo objeto. Podemos
escribir:
with (objeto)
{propiedad1 = ...
propiedad2 = ...
objeto.propiedad1=...
objeto.propiedad2=...
64
UNIVERSIDAD TECNICA DE MACHALA
2.7.6 Funciones
cdigo
2.7.7 Objetos
objeto.propiedad
Para definir un objeto en Javascript debemos, en primer lugar, definir una funcin
especial, cuya finalidad consiste en construir el objeto. A dicha funcin, llamada
constructor, debemos asignarle el mismo nombre que al objeto.
this.atr1=atr1;
this.atr2=atr2;
65
UNIVERSIDAD TECNICA DE MACHALA
objeto=new MiObjeto(....)
objeto.atr1=a;.
Para aadir mtodos a un objeto, debemos definir primero dichos mtodos como
una funcin normal:
{//codigo
objeto.metodo1=Metodo1;
objeto.metodo1(....);
Herencia
{this.base=ObjetoPadre;
this.base(arg1,arg2);
66
UNIVERSIDAD TECNICA DE MACHALA
En ese momento podemos acceder por un objeto de tipo ObjetoHijo tanto a los
mtodos y propiedades del objeto hijo como del objeto padre.
Objetos predefinidos
Array Vectores.
Function Funciones.
2.7.8 Eventos
Ventajas:
67
UNIVERSIDAD TECNICA DE MACHALA
Las aplicaciones Web son fciles de usar (no requieren conocimientos avanzados
de computacin).
Con una aplicacin Web tendr alta disponibilidad, ya que puede realizar
consultas en cualquier parte del mundo donde tenga acceso a Internet y a
cualquier hora.
Beneficios:
2.7.10 Antecedentes
68
UNIVERSIDAD TECNICA DE MACHALA
2.7.11 Interfaz
Como ejemplo, AJAX, es una tcnica de desarrollo web que usa una combinacin
de varias tecnologas.
Una ventaja significativa es que las aplicaciones web deberan funcionar igual
independientemente de la versin del sistema operativo instalado en el cliente. En
vez de crear clientes para Windows, Mac OS X, GNU/Linux, y otros sistemas
operativos, la aplicacin web se escribe una vez y se ejecuta igual en todas
partes. Sin embargo, hay aplicaciones inconsistentes escritas con HTML, CSS,
DOM y otras especificaciones para navegadores
Otra aproximacin es utilizar Adobe Flash Player o Java applets para desarrollar
parte o toda la interfaz de usuario. Como casi todos los navegadores incluyen
soporte para estas tecnologas (usualmente por medio de plug-ins), las
aplicaciones basadas en Flash o Java pueden ser implementadas con
69
UNIVERSIDAD TECNICA DE MACHALA
Una estrategia que est emergiendo para las empresas proveedoras de software
consiste en proveer acceso va web al software. Para aplicaciones previamente
distribuidas, como las aplicaciones de escritorio, se puede optar por desarrollar
una aplicacin totalmente nueva o simplemente por adaptar la aplicacin para ser
usada con una interfaz web. Estos ltimos programas permiten al usuario pagar
una cuota mensual o anual para usar la aplicacin, sin necesidad de instalarla en
el ordenador del usuario. Las compaas que siguen esta estrategia se
denominan Proveedores de Aplicaciones de Servicio (ASP por sus siglas en
ingls), un modelo de negocio que est atrayendo la atencin de la industria del
software.
70
UNIVERSIDAD TECNICA DE MACHALA
PHP
ASP/ASP.NET
Perl
Ruby
Python
HTML
XML
71
UNIVERSIDAD TECNICA DE MACHALA
Beneficios:
72
UNIVERSIDAD TECNICA DE MACHALA
73
UNIVERSIDAD TECNICA DE MACHALA
8. Los datos tambin van online. Por supuesto con el desplazamiento de las
aplicaciones locales a aquellas basadas en web tambin los datos que creamos y
accedemos van a necesitar experimentar profundos cambios. A nadie le gusta no
poder acceder a su propio e-mail cuando est de viaje, o poder recuperar un
documento particular cuando se conecta desde un ciber caf a 15.000 kilmetros
de su oficina"Los clientes no deberan almacenar datos; deberan ser como
telfono. De hecho pueden convertirse en telfonos, o viceversa. Y a medida que
los clientes se hagan ms pequeos, usted tiene otra razn para no tener sus
datos en ellos: algo que usted lleva consigo pueden perderse o ser robado"
11. Desarrollar aplicaciones en el lenguaje que usted quiera. Una vez que
las aplicaciones han sido separadas de computadoras locales y sistemas
operativos especficos esa pueden tambin ser escritas en prcticamente
74
UNIVERSIDAD TECNICA DE MACHALA
La era "En vivo" tal como Bill Gates la ha denominado, realmente ya est aqu,
debajo de nuestras narices.
75
UNIVERSIDAD TECNICA DE MACHALA
Por ltimo, pero no por eso menos importante, las aplicaciones y los servicios
basados en web necesitarn ser apoyados por estrategias de comunicacin de
marketing que ms que nunca corte el cordn umbilical con las comunicaciones
corporativas tradicionales, de arriba-abajo y reciba abiertamente feedback y
participacin del usuario en todas las reas del desarrollo y soporte del producto.
A medida que la tangibilidad de productos, embalajes y CDs gradualmente
desaparezcan, la "cara" de la web y la habilidad para interactuar verdaderamente
con sus clientes se convertir en los nuevos pilares claves de lo que nosotros
llamamos hoy marca institucional y marketing de relaciones pblicas.
Las pginas web son textos ASCII escritos en HTML (Hypertext Markup
Language), que se transfieren entre los servidores de WWW y los navegadores
mediante el protocolo HTTP (Hypertext Transfer Protocol).
Cuando comenz la World Wide Web, los sitios web ofrecan pginas estticas,
es decir, que a efectos del usuario, el nico proceso realizado era el de
visualizacin de sus contenidos por parte del navegador del cliente.
76
UNIVERSIDAD TECNICA DE MACHALA
-Las pginas del lado del servidor, permiten modificar los contenidos antes de
enviarlos al cliente. Las primeras fueron CGI (Common Gateway Interface) que
implementan pginas web activas en el servidor, capaces de leer lo que le
enviaba un cliente al servidor a travs de un formulario, o escribir en la pgina del
cliente.
PHP es capaz de realizar determinadas acciones de una forma fcil y eficaz sin
tener que generar programas programados en un lenguaje distinto al HTML. Esto
se debe a que PHP ofrece un extenso conjunto de funciones para la explotacin
de bases de datos sin complicaciones. Es por esto, que levanta un mayor inters
con respecto a los lenguajes pensados para los CGI.
PHP fue desarrollado originalmente por Rasmus Ledford en 1994 como un CGI
escrito en Perl que permita la interpretacin de un nmero limitado de comandos.
El sistema fue denominado Personal Home Page Tools y consigui relativo xito
gracias a que otras personas pidieron a Rasmus que les permitiese utilizar sus
77
UNIVERSIDAD TECNICA DE MACHALA
PHP3 careca del uso de sesiones, algo muy comn en las pginas web de cierta
complejidad. En el ao 2000, PHP3 evolucion a PHP4, que utiliza el motor Zend
(desarrollado por Zeev y Andi encargado de interpretar el cdigo fuente de los
scripts de PHP), desarrollado para cubrir las necesidades actuales y solucionar
algunos inconvenientes de la anterior versin. Algunas mejoras de esta nueva
versin son su mayor independencia del servidor web y su rapidez, ya que
primero se compila y luego se ejecuta, mientras que antes se ejecutaba a la vez
que se interpretaba el cdigo.
78
UNIVERSIDAD TECNICA DE MACHALA
PHP suele ser utilizado conjuntamente con Perl, Apache, MySQL o PostgreSQL
en sistemas Linux, formando una combinacin barata (todos los componentes son
de cdigo libre), potente y verstil. Tal ha sido la expansin de esta combinacin
que incluso ha merecido conocerse con un nombre propio LAMP (formado por las
iniciales de los diversos productos).
Apache, as como algunos otros servidores web, Roxen entre ellos, puede
incorporar PHP como un mdulo propio del servidor, lo cual permite que las
aplicaciones escritas en PHP resulten mucho ms rpidas que las aplicaciones
CGI habituales.
Si solicitamos a nuestro servidor una pgina PHP, ste enva dicha pgina al
intrprete de PHP que la ejecuta (de hecho, no se trata ms que de un programa)
y devuelve el resultado (generalmente HTML) al servidor web, el cual, a su vez,
se lo enviar al cliente.
<h1>Hola mundo!</h1>
79
UNIVERSIDAD TECNICA DE MACHALA
<?php
$MYVAR = 1234;
$myvar = 4321;
echo $myvar.<br>\n;
?>
1234<br>
4321<br>
El primer punto que debemos destacar es que los bloques de cdigo de PHP
estn delimitados en HTML con<?php y?>. Podemos, por tanto, escribir una
pgina HTML e incluir en ella diversos bloques de instrucciones PHP:
80
UNIVERSIDAD TECNICA DE MACHALA
<HTML>
<HEAD>
</HEAD>
<BODY>
<h1>Cabecera H1</h1>
<h1>Cabecera H1 segunda</h1>
<?php
$MYVAR = 1234;
$myvar = 4321;
echo $myvar.<br>;
?>
</BODY>
</HTML>
81
UNIVERSIDAD TECNICA DE MACHALA
Tambin podemos observar que hay un comentario dentro del cdigo. Este
comentario no afectar en modo alguno al programa ni ser enviado al navegador
del cliente (de hecho, el navegador cliente nunca recibir cdigo PHP). Para
introducir comentarios en nues- tro cdigo, disponemos de dos opciones:
2.8.2.3 Variables
PHP no precisa que declaremos a priori la variable que vamos a usar ni el tipo de
sta. PHP declarar la variable y le asignar el tipo de datos correcto en el
momento en que la usemos por primera vez:
$numero = 100;
$decimal = 8.5;
?>
En PHP las variables pueden tener, bsicamente, dos mbitos: uno global, en el
que sern accesibles desde todo el cdigo y otro local, en el que slo sern
accesibles desde la funcin en la que las creamos. Para asignar a una variable un
mbito global bastar con declararla (en este caso, s que hace falta una
declaracin de variable) y usar la palabra reservada global en la declaracin:
<?php
82
UNIVERSIDAD TECNICA DE MACHALA
global $test;
?>
Las variables que no califiquemos como globales, pero que sean definidas fuera
de cualquier funcin, tendrn como mbito el global.
Bastar con definir una variable dentro de una funcin. En ese caso, su mbito
quedar restringido a la funcin donde la declaremos.
<?php
function suma()
?>
Podemos ver que tanto a como variable son variables globales, mientras que
b.y.res son variables locales.
<?php
$mares[0]= Mediterrneo;
$mares[1] = Aral;
83
UNIVERSIDAD TECNICA DE MACHALA
$mares[2] = Muerto;
Como podemos ver, hemos declarado la variable mares con una llamada a
array(). Esto indica a PHP que dicha variable es un vector de elementos.
Para acceder a los elementos individuales del vector, debemos utilizar el nombre
del vector e indicar la posicin del elemento al que queremos acceder entre
corchetes. En PHP los vectores empiezan a numerarse en 0.
Adems de vectores con ndices numricos, PHP soporta vectores cuyos ndices
sean cadenas de texto:
<?php
$montaas[Everest]= Himalaya;
$montaas[Montblanc] = Alpes;
?>
5.2.4. Operadores
Los operadores son smbolos que se utilizan para realizar tanto operaciones
matemticas como comparaciones u operaciones lgicas.
Operadores matemticos:
84
UNIVERSIDAD TECNICA DE MACHALA
Operadores de comparacin:
2 == 2 (Verdadero).
2 != 2 (Falso).
2 < 5(Verdadero).
6 > 4 (Verdadero).
2 <= 5 (Verdadero).
6 >= 4 (Verdadero).
Operadores lgicos:
85
UNIVERSIDAD TECNICA DE MACHALA
<?php
$a = 5;
$b = 10;
?>
Condicionales
El condicional if nos permite escoger entre dos bloques de cdigo en funcin del
cumplimiento o no de una condicin.
<?php
86
UNIVERSIDAD TECNICA DE MACHALA
$a = 0;
$b = 1;
if($a == $b)
}else
?>
if(condicin)
else
87
UNIVERSIDAD TECNICA DE MACHALA
if/else:
if(condicin1)
if(condicin2)
else
else
switch.
88
UNIVERSIDAD TECNICA DE MACHALA
<?php
$a=1;
switch($a)
case1:
Bucles
89
UNIVERSIDAD TECNICA DE MACHALA
El bucle while
<?php
$a = 1;
while($a < 4)
echo a=$a<br>;
$a++;
?>
En este caso, el bucle se ejecutar cuatro veces. Cada vez que se ejecute,
incrementaremos el valor de a e imprimiremos un mensaje. Cada vez que se
vuelve a ejecutar el cdigo, while comprueba la condicin y, en caso de cumplirse,
vuelve a ejecutar el cdigo. La cuarta vez que se ejecute, como a valdr cuatro,
no se cumplir la condicin especificada y el bucle no volver a ejecutarse.
El bucle for
Para bucles del tipo anterior, donde la condicin de continuacin es sobre una
variable que aumenta o disminuye con cada iteracin, disponemos de un tipo de
bucle ms apropiado: for.
90
UNIVERSIDAD TECNICA DE MACHALA
<?php
echo a=$a<br>;
?>
Como podemos ver, en el caso del bucle for en la misma sentencia declaramos la
variable sobre la que iteraremos, la condicin de finalizacin y la de incremento o
continuacin.
foreach
Para aquellos casos en los que queremos que nuestro bucle haga un recorrido
sobre los elementos de un vector disponemos de una sentencia que nos simplifica
este hecho: foreach.
<?php
foreach ($a as $v
}?>
Como podemos ver, en su forma ms simple, foreach asigna a una variable v uno
a uno todos los valores de un vector a.
2.8.2.5 Funciones
Otro punto clave de PHP son las funciones. Las funciones en PHP pueden recibir
o no, parmetros y siempre pueden devolver un valor. Las funciones sirven para
91
UNIVERSIDAD TECNICA DE MACHALA
<?php
return$retorno;
?>
<?php
$retorno=$a1+$a2;
return$retorno;
for($i=$b1;$i<$b2;$i++)
$res=suma($res,$b3);
}return$res;
}echo sumatorio(1,3,2);
92
UNIVERSIDAD TECNICA DE MACHALA
?>
Las funciones en PHP reciben habitualmente los parmetros por valor, es decir, la
variable que se pasa como parmetro en el cdigo que llama no sufre
modificaciones si el parmetro de la funcin es modificado. Podemos, no
obstante, pasar parmetros por referencia (de forma similar a los punteros de
otros lenguajes de programacin):
<?php
$a1=0;
$a2=0;
}$b1=1;
$b2=1;
modifi($b1,$b2);
?>
10
Mostrando informacin
93
UNIVERSIDAD TECNICA DE MACHALA
Tenemos dos mecanismos para que PHP muestre informacin al usuario: por un
lado podemos escribir pginas HTML corrientes, insertando slo el cdigo PHP
que requerimos en medio del cdigo HTML. Por ejemplo:
<HTML>
<HEAD>
</HEAD>
<BODY>
<h1>Cabecera H1</h1>
<h1>Cabecera H1 segunda</h1>
</BODY>
</HTML>
Por otro lado, podemos usar PHP para generar contenido dinmico. Para ello
debemos usar las instrucciones de PHP de salida de datos, la ms importante,
echo.
<HTML>
<HEAD>
</HEAD>
<BODY>
<h1>Cabecera H1</h1>
94
UNIVERSIDAD TECNICA DE MACHALA
<h1>Cabecera H1 segunda</h1>
</BODY>
</HTML>
Para recoger informacin del usuario, podemos utilizar los formularios de HTML,
utilizando nuestros programas PHP como ACTION de dichos formularios. Como
PHP fue diseado para crear aplicaciones web, el acceso a los valores
introducidos por el usuario en los campos del formulario es realmente fcil en
PHP, ya que ste define un vector llamado REQUEST al que accedemos con el
nombre del campo como ndice y que contiene el valor contenido en ste al
ejecutar el programa PHP.
<HTML>
<HEAD>
</HEAD>
<BODY>
<INPUT TYPE=submit>
</FORM>
</BODY>
</HTML>
95
UNIVERSIDAD TECNICA DE MACHALA
<HTML>
<HEAD>
</HEAD>
<BODY>
<?php
?>
</BODY>
</HTML>
96
UNIVERSIDAD TECNICA DE MACHALA
chopElimina el ltimo carcter de una cadena, til para eliminar saltos de lnea o
espacios finales superfluos.
<?php
$cadena1 = hola;
$cadena2 = pera,manzana,fresa;
$longitud = str_len($cadena1);//longitud=4
$partes = explode(,,$cadena2);
//$partes[1]=manzana; y $partes[2]=fresa;
$cadena3 = str_replace(,,;,$otracadena);
?>
97
UNIVERSIDAD TECNICA DE MACHALA
<?php
$fichero = file(entrada.txt);
$numlin = count($fichero);
echo $fichero[$i];
?>
<?php
$recurso = fopen (
98
UNIVERSIDAD TECNICA DE MACHALA
ftp://usuario:password@uoc.edu/salida.txt, w);
?>
Ah podemos ver cmo abrimos un fichero para lectura (r), para escritura
binaria( w b ), una pgina web para leerla como si se tratara de un fichero y un
fichero va FTP para escribirlo, respectivamente.
<?php
$conexion=mysql_connect($servidor,$usuario,$password);
if(!$conexion).
exit();
}if(!(mysql_select_db($basedatos,$conexion)))
99
UNIVERSIDAD TECNICA DE MACHALA
exit();
}$consulta=mysql_query(
$conexion);
while($fila = mysql_fetch_array($consulta))
$nombre = $fila[nombre];
$telfono = $fila[telefono];
}mysql_free_result($consulta);
mysql_close($conexion);
?>
Podemos ver que el primer paso para acceder a la base de datos es abrir una
conexin con sta. Para ello necesitaremos la direccin del ordenador que
contenga la base de datos, el usuario con el que conectaremos y la palabra de
acceso a dicha base de datos. Una vez conectados al servidor de mySQL,
debemos seleccionar qu base de datos de las mltiples que puede tener el
servidor queremos usar para trabajar. A raz de esta secuencia de conexin,
tendremos en la variable conexin los datos de la conexin a mySQL. Debemos
pasar esta variable a todas las funciones de PHP que accedan a bases de datos.
Ello nos permite disponer de diversas conexiones a diferentes bases de datos
abiertas al mismo tiempo y trabajar con ellas simultneamente.
100
UNIVERSIDAD TECNICA DE MACHALA
de una tabla de la base de datos llamada agenda, la cual contiene dos columnas
denominadas nombre y telfono.
Posteriormente, podemos ejecutar un bucle que recorrer todos los registros para
que nos devuelva la consulta a la base de datos, accediendo a ellos uno a uno y
pudiendo as mostrar los resultados.
<?php
//$conexion = pg_connect(dbname=.$basedatos);
//$conexion = pg_connect(
or die No conecta;
$resultado = pg_query($conexin,
101
UNIVERSIDAD TECNICA DE MACHALA
while($fila = pg_fetch_array($result))
$nombre = $fila[nombre];
$telefono = $fila[telefono];
}pg_close($dbconn);
?>
Uno de los puntos fuertes y una de las claves del xito de PHP como lenguaje de
programacin de aplicaciones web reside en la gran cantidad de libreras,
mdulos, etc., que se han desarrollado para l. PHP pone a nuestra disposicin
una cantidad ingente de API, funciones, mdulos, clases (recordad que,
progresivamente, PHP se est convirtiendo en un lenguaje de programacin
orientado a objetos), los cuales nos permiten operar con la complejidad creciente
de las aplicaciones web. Esta diversidad de soporte incluye, entre otras cosas:
Control de sesiones.
102
UNIVERSIDAD TECNICA DE MACHALA
Plantillas HTML.
Carritos de compra.
Manejo decookies.
Transferencia de ficheros.
Expresiones regulares.
Por eso, en caso de desear usar PHP para desarrollar algn proyecto, resulta
altamente recomendable visitar la pgina web del proyecto (http://www.php.net),
ya que es muy posible que nos ofrezca un surtido de herramientas que nos
faciliten grandemente el trabajo. Disponemos, adems, de PEAR, un repositorio
103
UNIVERSIDAD TECNICA DE MACHALA
de PHP que nos proporcionar la mayor parte de las herramientas que podamos
llegar a necesitar.
La mayora de los SGBD de cdigo libre proceden de dos fuentes principales: por
un lado, de proyectos que nacieron como cdigo libre desde su principio
(proyectos de investigacin, etc.) y por el otro, tenemos SGBD que pertenecan a
empresas de software propietario, cuyo negocio principal no es el SGBD. Estas
compaas optan por poner el producto bajo el amparo de una licencia de cdigo
libre, abriendo as su desarrollo a la comunidad. Veremos a continuacin algunos
de los SGBD de cdigo libre ms emblemticos.
2.9.2 PostgreSQL
104
UNIVERSIDAD TECNICA DE MACHALA
Subconsultas.
Soporte de vistas.
Integridad referencial.
Herencia de tablas.
Triggers, comandos SQL que deben ejecutarse al actuar sobre una tabla.
105
UNIVERSIDAD TECNICA DE MACHALA
2.9.3 MySQL
106
UNIVERSIDAD TECNICA DE MACHALA
107
UNIVERSIDAD TECNICA DE MACHALA
Entre las alternativas a este programa, existen algunos programas libres como
GIMP, orientada a la edicin fotogrfica en general, o propietarios como
PhotoPaint de Corel, capaz de trabajar con cualquier caracterstica de los
archivos de Photoshop, y tambin con sus filtros plugin.
108
UNIVERSIDAD TECNICA DE MACHALA
109
UNIVERSIDAD TECNICA DE MACHALA
Como editor WYSIWYG que es, Dreamweaver permite ocultar el cdigo HTML de
cara al usuario, haciendo posible que alguien no entendido pueda crear pginas y
sitios web fcilmente sin necesidad de escribir cdigo.
110
UNIVERSIDAD TECNICA DE MACHALA
Tambin podra decirse, que para un diseo ms rpido y a la vez fcil podra
complementarse con fireworks en donde podra uno disear un men o para otras
creaciones de imgenes (gif web, gif websnap, gif adaptable, jpeg calidad
superior, jpeg archivo ms pequeo, gif animado websnap) para un sitio web y
despus exportar la imagen creada y as utilizarla como una sola, en donde ya
llevara los vnculos a un dicho sitio en especifico que uno le haya dado.(MRR -
U.P.C.)
111
UNIVERSIDAD TECNICA DE MACHALA
2.12 JavaScript
112
UNIVERSIDAD TECNICA DE MACHALA
En 1997 los autores propusieron JavaScript para que fuera adoptado como
estndar de la European Computer Manufacturers 'Association ECMA, que a
pesar de su nombre no es europeo sino internacional, con sede en Ginebra.
En junio de 1997 fue adoptado como un estndar ECMA, con el nombre de
ECMAScript. Poco despus tambin como un estndar ISO.
Todos los que hasta ahora hayan seguido el curso de HTML, se habrn dado
cuenta de una cosa: crear un documento HTML es crear algo de caracter
esttico, inmutable con el paso del tiempo. La pgina se carga, y ah termina
la historia. Tenemos ante nosotros la informacin que buscbamos, pero no
podemos INTERACTUAR con ella.
113
UNIVERSIDAD TECNICA DE MACHALA
2.12.2 Versiones
Internet
No soporta JavaScript --
Explorer 2
Internet
Javascript 1.0 --
Explorer 3
Internet
Javascript 1.2 ECMA-262-compliant
Explorer 4
ECMA compliant
Nestcape 6 Full ECMAScript-262
Javascript 1.4
114
UNIVERSIDAD TECNICA DE MACHALA
Click
Nota: Los scripts pueden incluirse como comentarios para asegurar que su
cdigo no es "visto" por navegadores viejos que no reconocen JavaScript y
as evitar errores.
<script ....>
<!-
Cdigo JavaScript
//-->
</script>
2.12.4 Gramtica
115
UNIVERSIDAD TECNICA DE MACHALA
116
UNIVERSIDAD TECNICA DE MACHALA
globalVariable=5;
117
UNIVERSIDAD TECNICA DE MACHALA
Sin embargo, si usted est codificando dentro de una funcin y usted quiere
crear una variable local que slo tenga alcance dentro de esa funcin, debe
declarar la nueva variable haciendo uso de var:
function newFunction()
{
var localVariable=1;
globalVariable=0;
...
}
MiVariable=4;
y despus:
MiVariable="Una_Cadena";
Tipos de Datos:
118
UNIVERSIDAD TECNICA DE MACHALA
Nulos Null
Operadores Aritmticos
119
UNIVERSIDAD TECNICA DE MACHALA
una variable.
Operadores de comparacin
120
UNIVERSIDAD TECNICA DE MACHALA
Operador Descripcin
Nota:
121
UNIVERSIDAD TECNICA DE MACHALA
Operadores Lgicos
122
UNIVERSIDAD TECNICA DE MACHALA
Operador Descripcin
Operadores de Cadena
123
UNIVERSIDAD TECNICA DE MACHALA
Operadores de Asignacin
Operador Descripcin
124
UNIVERSIDAD TECNICA DE MACHALA
a = 8;
b = 3;
a += 3;
document.write(a);document.write("<br>");
a -= 2;
document.write(a);document.write("<br>");
b *= 2;
document.write(b);
</script>
</body>
</html>
Operadores especiales
Operador Descripcin
2.12.8 Objetos
125
UNIVERSIDAD TECNICA DE MACHALA
El Objeto String
Este objeto nos permite hacer diversas manipulaciones con las cadenas, para
que trabajar con ellas sea ms sencillo. Cuando asignamos una cadena a una
variable, JS est creando un objeto de tipo String que es el que nos permite
hacer las manipulaciones.
Propiedades
Mtodos
126
UNIVERSIDAD TECNICA DE MACHALA
127
UNIVERSIDAD TECNICA DE MACHALA
cad.split("o");
with(document) {
write("La cadena es: "+cad+"<BR>");
write("Longitud de la cadena: "+cad.length+"<BR>");
write("Haciendola ancla: "+cad.anchor("b")+"<BR>");
write("En grande: "+cad.big()+"<BR>");
write("Parpadea: "+cad.blink()+"<BR>");
write("Caracter 3 es: "+cad.charAt(3)+"<BR>");
write("Fuente FIXED: "+cad.fixed()+"<BR>");
write("De color: "+cad.fontcolor("#FF0000")+"<BR>");
write("De color: "+cad.fontcolor("salmon")+"<BR>");
write("Tamao 7: "+cad.fontsize(7)+"<BR>");
write("<I>orl</I> esta en la posicion: "+cad.indexOf("orl"));
write("<BR>En cursiva: "+cad.italics()+"<BR>");
128
UNIVERSIDAD TECNICA DE MACHALA
El Objeto Array
a=new Array(15);
129
UNIVERSIDAD TECNICA DE MACHALA
a=new Array(21,"cadena",true);
que nos muestra, adems, que los elementos del array no tienen por qu ser
del mismo tipo.
a=new Array("cadena");
a=new Array(false);
a=new Array(2,3);
a=new Array(4);
for(i=0;i<4;i++) a[i]=new Array(7);
130
UNIVERSIDAD TECNICA DE MACHALA
Propiedades
length. Esta propiedad nos dice en cada momento la longitud del array, es
decir, cuntos elementos tiene.
Mtodos
j[0]=new Array(3);
j[1]=new Array(2);
131
UNIVERSIDAD TECNICA DE MACHALA
document.write(c);
document.write("<P>"+d+"<P>");
document.write("j[0][0]="+j[0][0]+"; j[0][1]="+j[0][1]+
"; j[0][2]="+j[0][2]+"<BR>");
document.write("j[1][0]="+j[1][0]+"; j[1][1]="+j[1][1]+
"; j[1][2]="+j[1][2]);
document.write("<P>h= "+(h[0]='Hola')+"<P>");
document.write("i[0]="+i[0]+"; i[1]="+i[1]+"; i[2]="+i[2]+"<P>");
document.write("Antes de ordenar: "+b.join(', ')+"<P>");
document.write("Ordenados: "+b.sort()+"<P>");
document.write("Ordenados en orden inverso: "+b.sort().reverse());
//-->
</script>
</BODY>
</HTML>
El Objeto Math
Este objeto se utiliza para poder realizar clculos en nuestros scripts. Tiene la
peculiaridad de que sus propiedades no pueden modificarse, slo consultarse.
Estas propiedades son constantes matemticas de uso frecuente en algunas
tareas, por ello es lgico que slo pueda consultarse su valor pero no
modificarlo.
Propiedades
132
UNIVERSIDAD TECNICA DE MACHALA
Mtodos
133
UNIVERSIDAD TECNICA DE MACHALA
El Objeto Date
Este objeto nos va a permitir hacer manipulaciones con fechas: poner fechas,
consultarlas... para ello, debemos saber lo siguiente: JS maneja fechas en
milisegundos. Los meses de Enero a Diciembre vienen dados por un entero
cuyo rango vara entre el 0 y el 11 (es decir, el mes 0 es Enero, el mes 1 es
Febrero, y as sucesivamente), los das de la semana de Domingo a Sbado
vienen dados por un entero cuyo rango vara entre 0 y 6 (el da 0 es el
Domingo, el da 1 es el Lunes, ...), los aos se ponen tal cual, y las horas se
especifican con el formato HH:MM:SS.
Podemos crear un objeto Date vaco, o podemos crealo dndole una fecha
concreta. Si no le damos una fecha concreta, se crear con la fecha
correspondiente al momento actual en el que se crea. Para crearlo dndole un
valor, tenemos estas posibilidades:
134
UNIVERSIDAD TECNICA DE MACHALA
Mtodos
135
UNIVERSIDAD TECNICA DE MACHALA
El Objeto Boolean
Este objeto nos permite crear booleanos, esto es, un tipo de dato que es
cierto o falso, tomando los valores true o false. Podemos crear objetos de este
tipo mediante su constructor. Veamos varios ejemplos:
El Objeto Number
Este objeto representa el tipo de dato nmero con el que JS trabaja. Podemos
asignar a una variable un nmero, o podemos darle valor, mediante el
constructor Number, de esta forma:
136
UNIVERSIDAD TECNICA DE MACHALA
Propiedades
Jerarqua
En este captulo vamos a estudiar la jerarqua que presentan los objetos del
navegador, atendiendo a una relacin "contenedor - contenido" que se da
entre estos objetos. De forma esquemtica, esta jerarqua podemos
representarla de esta manera (al lado est la directiva HTML con que se
incluyen en el documento objetos de este tipo, cuando exista esta directiva):
137
UNIVERSIDAD TECNICA DE MACHALA
* window
+ history
+ location
138
UNIVERSIDAD TECNICA DE MACHALA
+ frame <FRAME>
* navigator
Por ejemplo, si queremos hacer referencia a una caja de texto, tendremos que
escribir ventana.documento.formulario.caja_de_texto donde ventana es el
nombre del objeto window (su nombre por defecto es window), documento es
el nombre del objeto document (cuyo nombre por defecto es document),
formulario es el nombre del objeto forms (veremos que forms es un array) y
caja_de_texto es el nombre del objeto textarea (cuyo nombre por defecto es
textarea).
El objeto window
139
UNIVERSIDAD TECNICA DE MACHALA
Propiedades
* length. Variable que nos indica cuntos frames tiene la ventana actual.
* window. Igual que self: nombre alternativo del objeto window actual.
140
UNIVERSIDAD TECNICA DE MACHALA
Mtodos
* focus(). Captura el foco del ratn sobre el objeto window actual. A partir de
NS 3, IE 4.
141
UNIVERSIDAD TECNICA DE MACHALA
142
UNIVERSIDAD TECNICA DE MACHALA
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
<script LANGUAGE="JavaScript">
<!--
function moverVentana()
143
UNIVERSIDAD TECNICA DE MACHALA
mi_ventana.moveBy(5,5);
i++;
if (i<20)
setTimeout('moverVentana()',100);
else
mi_ventana.close();
//-->
</script>
</HEAD>
<BODY>
<script LANGUAGE="JavaScript">
<!--
var opciones="left=100,top=100,width=250,height=150", i= 0;
mi_ventana = window.open("","",opciones);
mi_ventana.moveTo(400,100);
moverVentana();
//-->
</script>
</BODY>
</HTML>
144
UNIVERSIDAD TECNICA DE MACHALA
El objeto frame
Todos sabemos que la ventana del navegador puede ser dividida en varios
frames que contengan cada uno de ellos un documento en el que mostrar
contenidos diferentes. Al igual que con las ventanas, cada uno de estos
frames puede ser nombrado y referenciado, lo que nos permite cargar
documentos en un marco sin que esto afecte al resto.
Realmente cada frame se representa con un objeto window, esto quiere decir
que el objeto frame tiene todas las propiedades y mtodos del objeto window.
Propiedades
* length. Variable que nos indica cuntos frames tiene la ventana actual.
145
UNIVERSIDAD TECNICA DE MACHALA
* window. Igual que self: nombre alternativo del objeto window actual.
Mtodos
* focus(). Captura el foco del ratn sobre el objeto window actual. A partir de
NS 3, IE 4.
146
UNIVERSIDAD TECNICA DE MACHALA
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
</HEAD>
<frameset cols="50%,*">
<frameset rows="50%,*">
147
UNIVERSIDAD TECNICA DE MACHALA
</frameset>
</frameset>
</HTML>
ejem09a.html
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
<script LANGUAGE="JavaScript">
<!--
function color()
top.frames['der1'].document.bgColor="#FF5500";
function cargarYahoo()
top.frames['der2'].location='http://www.yahoo.com';
//-->
</script>
</HEAD>
148
UNIVERSIDAD TECNICA DE MACHALA
<BODY>
<script LANGUAGE="JavaScript">
<!--
var i=0;
for (i=0;i<top.frames.length;i++)
//-->
</script>
<br><br>
</BODY>
</HTML>
Ver cdigo
ejem09b.html
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
149
UNIVERSIDAD TECNICA DE MACHALA
</HEAD>
<BODY>
<script LANGUAGE="JavaScript">
<!--
//-->
</script>
</BODY>
</HTML>
El objeto location
protocolo://maquina_host[:puerto]/camino_al_recurso
Propiedades
* host. Cadena que contiene el nombre del servidor y el nmero del puerto,
dentro de la URL.
150
UNIVERSIDAD TECNICA DE MACHALA
Mtodos
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
</HEAD>
<BODY>
<script LANGUAGE="JavaScript">
<!--
151
UNIVERSIDAD TECNICA DE MACHALA
//-->
</script>
</BODY>
</HTML>
El objeto history
Este objeto se encarga de almacenar una lista con los sitios por los que se ha
estado navegando, es decir, guarda las referencias de los lugares visitados.
Se utiliza, sobre todo, para movernos hacia delante o hacia atrs en dicha
lista.
Propiedades
Mtodos
* back(). Vuelve a cargar la URL del documento anterior dentro del historial.
152
UNIVERSIDAD TECNICA DE MACHALA
El objeto navigator
Propiedades
* mimeTypes. Array que contiene todos los tipos MIME soportados por el
cliente. A partir de NS 3.
* plugins. Array que contiene todos los plug-ins soportados por el cliente. A
partir de NS 3.
Mtodos
153
UNIVERSIDAD TECNICA DE MACHALA
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
</HEAD>
<BODY>
<script LANGUAGE="JavaScript">
<!--
//-->
</script>
</BODY>
</HTML>
154
UNIVERSIDAD TECNICA DE MACHALA
El objeto document
Propiedades
* cookie. Es una cadena con los valores de las cookies del documento
actual
* forms. Se trata de un array con todos los formularios del documento. Los
formularios tienen a su vez elementos (cajas de texto, botones, etc) que
tienen sus propias propiedades y mtodos, y sern tratados en el siguiente
captulo.
155
UNIVERSIDAD TECNICA DE MACHALA
* referrer. Cadena con la URL del documento que llam al actual, en caso
de usar un enlace.
Mtodos
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
<script LANGUAGE="JavaScript">
<!--
var i=1;
function cambiarTitulo()
document.title = titulooriginal.substring(0,i);
156
UNIVERSIDAD TECNICA DE MACHALA
i++;
if (i>titulooriginal.length) i=0;
setTimeout('cambiarTitulo()',100);
cambiarTitulo();
//-->
</script>
</HEAD>
<BODY>
<script LANGUAGE="JavaScript">
<!--
//-->
</script>
</BODY>
</HTML>
157
UNIVERSIDAD TECNICA DE MACHALA
El objeto link
Este objeto engloba todas las propiedades que tienen los enlaces externos al
documento actual.
Propiedades
* protocol. Es una cadena con el protocolo usado, incluyendo los : (los dos
puntos), dentro de la URL
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
</HEAD>
<BODY>
158
UNIVERSIDAD TECNICA DE MACHALA
<a href="http://www.google.com/search?q=crear+paginas+web">Google!
</a><br><br>
<script LANGUAGE="JavaScript">
<!--
var i;
for (i=0;i<document.links.length;i++)
document.write("<br><br>");
//-->
</script>
</BODY>
</HTML>
El objeto anchor
Este objeto engloba todas las propiedades que tienen los enlaces internos al
documento actual.
Propiedades
159
UNIVERSIDAD TECNICA DE MACHALA
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
</HEAD>
<BODY>
<script LANGUAGE="JavaScript">
<!--
var i;
for (i=0;i<document.anchors.length;i++)
document.write("<br><br>");
//-->
</script>
<a href="#arriba">Subir</a>
</BODY>
</HTML>
El objeto image
160
UNIVERSIDAD TECNICA DE MACHALA
Propiedades
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
</HEAD>
<script LANGUAGE="JavaScript">
<!--
img1.src = "/graficos/nni1b.gif";
161
UNIVERSIDAD TECNICA DE MACHALA
img2.src = "/graficos/nni1a.gif";
function cambia(nombre,imagen)
{
nombre.src = imagen.src
}
function dobleancho()
{
imagen1.width=imagen1.width*2;
}
function doblealto()
{
imagen1.height=imagen1.height*2;
}
function mitadancho()
{
imagen1.width=imagen1.width/2;
}
function mitadalto()
{
imagen1.height=imagen1.height/2;
}
//-->
</script>
<BODY>
162
UNIVERSIDAD TECNICA DE MACHALA
</BODY>
</HTML>
Formularios
El objeto form
Propiedades
* action. Es una cadena que contiene la URL del parmetro ACTION del
form, es decir, la direccin en la que los datos del formulario sern
procesados.
163
UNIVERSIDAD TECNICA DE MACHALA
* method. Es una cadena que tiene el nombre del mtodo con el que se va
a recibir/procesar la informacin del formulario (GET/POST).
Mtodos
Vistas ahora las propiedades y mtodos del objeto form, pasamos a estudiar,
uno por uno, todos los objetos contenidos en el formulario.
Propiedades
Mtodos
164
UNIVERSIDAD TECNICA DE MACHALA
<BODY>
</form>
</BODY>
</HTML>
165
UNIVERSIDAD TECNICA DE MACHALA
El objeto button
Propiedades
Mtodos
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
</HEAD>
<script LANGUAGE="JavaScript">
<!--
function Mostrar(boton)
return true;
//-->
166
UNIVERSIDAD TECNICA DE MACHALA
</script>
<BODY>
</form>
</BODY>
</HTML>
El objeto checkbox
Propiedades
Mtodos
167
UNIVERSIDAD TECNICA DE MACHALA
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
</HEAD>
<script LANGUAGE="JavaScript">
<!--
function Mostrar(boton)
msg="Opcion 1:"+formulario.check1.checked+"\n"
msg+="Opcion 2:"+formulario.check2.checked+"\n"
msg+="Opcion 3:"+formulario.check3.checked+"\n"
alert(msg);
//-->
</script>
<BODY>
</form>
168
UNIVERSIDAD TECNICA DE MACHALA
</BODY>
</HTML>
El objeto radio
Al contrario que con los checkbox, que nos permiten elegir varias
posibilidades entre las dadas, los objetos radio slo nos permiten elegir una
de entre todas las que hay. Estn pensados para posibilidades mtuamente
excluyentes (no se puede ser a la vez mayor de 18 aos y menor de 18 aos,
no se puede estar a la vez soltero y casado, etc.).
Propiedades
* checked. Valor booleano que nos dice si el radio est seleccionado o no.
Hay que recordar que para agrupar elementos de tipo radio, todos ellos deben
tener el mismo valor en NAME.
Mtodos
169
UNIVERSIDAD TECNICA DE MACHALA
<!--
function Mostrar(boton)
{
msg="Elementos:"+formulario.edad.length+"\n";
msg+="Menor de 18 aos:"+formulario.edad[0].checked+"\n";
msg+="Entre 18 y 60 aos:"+formulario.edad[1].checked+"\n";
msg+="Mayor de 60 aos:"+formulario.edad[2].checked+"\n";
alert(msg);
}
//-->
</script>
<BODY>
<form action="procesa.phtml" name="formulario" id="formulario"
method="GET">
Edad:<br>
<input type="radio" name="edad" value="<18"> Menor de 18 aos.<br>
<input type="radio" name="edad" value=">18 y <60" checked> Entre 18 y 60
aos.<br>
<input type="radio" name="edad" value=">60"> Mayor de 60 aos.<br>
</form>
<A href="javascript:Mostrar()">Ver valores</A>
</BODY>
</HTML>
El objeto select
Este objeto representa una lista de opciones dentro de un formulario. Puede
tratarse de una lista desplegable de la que podremos escoger alguna (o
algunas) de sus opciones.
* length. Valor numrico que nos indica cuntas opciones tiene la lista
170
UNIVERSIDAD TECNICA DE MACHALA
o length. Valor numrico que nos dice cuntas opciones tiene la lista.
* selectedIndex. Valor numrico que nos dice cul de todas las opciones
disponibles est actualmente seleccionada.
<HTML>
<HEAD>
<title>Ejemplo de JavaScript</title>
</HEAD>
<script LANGUAGE="JavaScript">
<!--
function Mostrar(boton)
{
msg="Elementos:"+formulario.edad.length+"\n";
msg+="Edad:
"+formulario.edad.options[formulario.edad.selectedIndex].value+"\n";
171
UNIVERSIDAD TECNICA DE MACHALA
alert(msg);
}
//-->
</script>
<BODY>
<form action="procesa.phtml" name="formulario" id="formulario"
method="GET">
Edad:<br>
<select name="edad">
<option value="<18" SELECTED>Menor de 18 aos</option>
<option value=">18 y <60">Entre 18 y 60 aos</option>
<option value=">60">Mayor de 60 aos</option>
</select>
</form>
<A href="javascript:Mostrar()">Ver valores</A>
</BODY>
</HTML>
El objeto hidden
Gracias a este objeto podemos almacenar informacin extra en el formulario
de forma completamente transparente para el usuario, pues no se ver en
ningn momento que tenemos estos campos en el documento.
Es parecido a un campo de texto (objeto text) salvo que no tiene valor por
defecto (no tiene sentido pues el usuario no va a modificarlo) y que no se
puede editar.
Propiedades
172
UNIVERSIDAD TECNICA DE MACHALA
2.13 Ajax
2.14.1Introduccin a Xajax
173
UNIVERSIDAD TECNICA DE MACHALA
Para trabajar con Ajax tenemos que saber programar con Javascript y utilizar
una serie de mtodos complejos que dificultan bastante el desarrollo de las
pginas web. Pero por suerte, existen sistemas como Xajax que nos permiten
abstraernos de las complicaciones del desarrollo de pginas web que hacen
uso de Ajax. En este caso, Xajax mezcla PHP con Javascript, para el
desarrollo de aplicaciones PHP avanzadas, casi sin conocimientos Javascript
y sin necesidad de aprender a gestionar solicitudes al servidor por Ajax.
Por otra parte, tenemos una seccin dedicada por completo a Ajax, que
tambin nos puede servir para trabajar con Ajax sin utilizar ningn framework.
174
UNIVERSIDAD TECNICA DE MACHALA
Las dos primeras versiones son versiones Beta, como se puede ver en el
nombre de las releases, la tercera versin, aunque es menos nueva, es la
nica que tienen publicada como estable, es decir, la nica que podemos
utilizar en nuestras aplicaciones en produccin con la confianza que est libre
de errores.
Dejo aqu un link para descarga de la versin de Xajax 0.2.5. Esta versin la
podramos descargar desde la propia pgina de Xajax, pero pongo este link
por si acaso eliminan los archivos de esta versin y los queris descargar
para realizar los ejemplos de este manual en vuestros sistemas.
Esto es todo. Simplemente decir que Xajax es una delicia, por su facilidad, por
su potencia, versatilidad, etc. Los desarrolladores de PHP podrn
comprobarlo en pocos minutos y hacer ejemplos o programas con Ajax,
fcilmente y casi sin ms conocimientos que los que ya tienen.
175
UNIVERSIDAD TECNICA DE MACHALA
2.15 WAMPSERVER
Funcionalidades
* Crear alias
176
UNIVERSIDAD TECNICA DE MACHALA
2.16 XAMPP
177
UNIVERSIDAD TECNICA DE MACHALA
178
UNIVERSIDAD TECNICA DE MACHALA
El interfaz para crear bases de datos y usuarios, as como sus permisos son
idnticos en ambos. Ambos incluyen phpmyadmin
(http://localhost/phpmyadmin/), la herramienta para manejar la administracin
de SQL, para realizar esas tareas.
179
UNIVERSIDAD TECNICA DE MACHALA
Por su parte, las siglas de WAMP significan Windows (el Sistema Operativo
sobre el que funciona), Apache, MySQL y PHP.
Un breve paso a paso de cmo utilizar WAMP en una LAN, de manera que
todos los usuarios puedan acceder a los sitios que estemos probando.
Configuracin
C:/wamp/www/logs
C:/wamp/www/test/logs
180
UNIVERSIDAD TECNICA DE MACHALA
Include conf/extra/httpd-vhosts.conf
NameVirtualHost *:80
<VirtualHost *:80>
ServerName test
DocumentRoot e:/wamp/www/test
ErrorLog e:/wamp/www/test/logs/error.log
CustomLog e:/wamp/www/test/logs/access.log common
</VirtualHost>
<VirtualHost *:80>
ServerName localhost
DocumentRoot e:/wamp/www
ErrorLog e:/wamp/www/logs/error.log
CustomLog e:/wamp/www/logs/access.log common
</VirtualHost>
(Ponemos la carpeta en que tenemos los sitios subidos en www dentro de
wamp)
4. En el servidor, abrir el archivo hosts dentro de
C:/Windows/System32/drivers/etc. Para nuestro sitio test, deberamos tener
al menos lo siguiente:
127.0.0.1 localhost
127.0.0.1 test
5. En las otras mquinas, abrimos tambin el archivo hosts, y deberemos
tener lo siguiente:
192.168.1.107 test
181
UNIVERSIDAD TECNICA DE MACHALA
2.19.2 Aplicaciones
182
UNIVERSIDAD TECNICA DE MACHALA
2.20 Pruebas
Las pruebas que se realizaron fueron extensas las misma que se realizaron
con encuestas e instrucciones de comandos, y se corrigieron una por una
para evitar futuros inconvenientes.
183
UNIVERSIDAD TECNICA DE MACHALA
3.1.1 Metodologa XP
184
UNIVERSIDAD TECNICA DE MACHALA
3.1.1.1 Valores
3.1.1.2 Simplicidad:
3.1.1.3 Comunicacin:
185
UNIVERSIDAD TECNICA DE MACHALA
186
UNIVERSIDAD TECNICA DE MACHALA
3.1.1.6 Respeto:
187
UNIVERSIDAD TECNICA DE MACHALA
188
UNIVERSIDAD TECNICA DE MACHALA
3.2 Planificacin
189
UNIVERSIDAD TECNICA DE MACHALA
3.2.3 Iteraciones
3.3 Diseo
Para los estudiantes ser ms provechoso conocer sus notas y poder realizar
su respectiva matricula, con la facilidad que ofrece la pgina web por medio
del internet.
190
UNIVERSIDAD TECNICA DE MACHALA
3.4 Desarrollo
3.4.1 Integracin
191
UNIVERSIDAD TECNICA DE MACHALA
192
UNIVERSIDAD TECNICA DE MACHALA
REQUISITOS FUNCIONALES
Gestin de Documentacin
- Historia del Colegio Nacional Mixto Dr. Jos Mara Velasco Ibarra
- Acta de Matriculas
- Nmina de Profesores
- Nmina de Alumnos
- Institucin y su mbito.
- reas Administrativas
- Departamento de Psicologa
- Canchas deportivas
- Bares
- Parques
- reas Verdes
GESTIN ACADMICA
- Profesores
- Estudiantes
- Usuarios
- Matricula
193
UNIVERSIDAD TECNICA DE MACHALA
CONSULTAS
- Profesores
- Estudiantes
- Usuario
- Matricula
- Notas
Gestin de EVENTOS
- Quienes Somos
- Servicios
- Sistema
- Contctenos
- Descargas
- Formulario de autenticacin
REQUISITOS NO FUNCIONALES
Compatibilidad
Windows XP
Vista
194
UNIVERSIDAD TECNICA DE MACHALA
Linux
Windows 7
Hardware
Pentium IV en adelante
1 Gb de memoria
Browsers:
Mozilla FireFox
Google Chrome
Opera
Safira
Identificacin de usuarios
195
UNIVERSIDAD TECNICA DE MACHALA
Disponibilidad
Confidencialidad
Funcionalidad
Desempeo
Confiabilidad
Seguridad externa
Seguridad interna
Fiabilidad
Eficiencia
Mantenibilidad
Portabilidad
_____________________
Ing. Sist. Rossmery Samaniego Mg. Sc
EVALUACIN DE EXPERTOS
196
UNIVERSIDAD TECNICA DE MACHALA
Disponibilidad
Confidencialidad
Funcionalidad
Desempeo
Confiabilidad
Seguridad externa
Seguridad interna
Fiabilidad
Eficiencia
Mantenibilidad
Portabilidad
___________________________
Ing. Sist. Jonathan Aguilar
ENCUESTAS
USUARIOS (SECRETARIA)
BAJA
EXCELENTE
CORRECTA
ALTA
ATRIBUTO DE CALIDAD
197
UNIVERSIDAD TECNICA DE MACHALA
Diseo
Facilidad de manejo
Ayudas y documentacin
Animaciones
Exploracin
Herramientas
Grficos
Interactividad
Contenidos
Funcionalidades
_____________________
Secretaria
USUARIOS (PROFESORES)
BAJA
EXCELENTE
CORRECTA
ALTA
ATRIBUTO DE CALIDAD
Diseo
Facilidad de manejo
Ayudas y documentacin
Rendimiento del programa
Bases de Datos de alumnos
Versatilidad del programa
Tipo de interaccin con el programa
Estructura del programa
198
UNIVERSIDAD TECNICA DE MACHALA
Animaciones
Exploracin
Herramientas
Grficos
Interactividad
Contenidos
Funcionalidades
_____________________
Prof.:
USUARIOS (PROFESORES)
BAJA
EXCELENTE
CORRECTA
ALTA
ATRIBUTO DE CALIDAD
Diseo
Facilidad de manejo
Ayudas y documentacin
Rendimiento del programa
Bases de Datos de alumnos
Versatilidad del programa
Tipo de interaccin con el programa
Estructura del programa
Animaciones
Exploracin
Herramientas
Grficos
Interactividad
Contenidos
Funcionalidades
_____________________
199
UNIVERSIDAD TECNICA DE MACHALA
Prof.:
USUARIOS (PROFESORES)
BAJA
EXCELENTE
CORRECTA
ALTA
ATRIBUTO DE CALIDAD
Diseo
Facilidad de manejo
Ayudas y documentacin
Rendimiento del programa
Bases de Datos de alumnos
Versatilidad del programa
Tipo de interaccin con el programa
Estructura del programa
Animaciones
Exploracin
Herramientas
Grficos
Interactividad
Contenidos
Funcionalidades
_____________________
Prof.:
USUARIOS (ESTUDIANTES)
BAJA
EXCELENTE
CORRECTA
ALTA
ATRIBUTO DE CALIDAD
200
UNIVERSIDAD TECNICA DE MACHALA
Motivacin e inters
Diseo
Contenidos
Funcionalidades
Usabilidad
Grado de entretenimiento
_____________________
Alumna:
USUARIOS (ESTUDIANTES)
BAJA
EXCELENTE
CORRECTA
ALTA
ATRIBUTO DE CALIDAD
201
UNIVERSIDAD TECNICA DE MACHALA
Motivacin e inters
Diseo
Contenidos
Funcionalidades
Usabilidad
Grado de entretenimiento
_____________________
Alumna:
USUARIOS (ESTUDIANTES)
BAJA
EXCELENTE
CORRECTA
ALTA
ATRIBUTO DE CALIDAD
Motivacin e inters
202
UNIVERSIDAD TECNICA DE MACHALA
Diseo
Contenidos
Funcionalidades
Usabilidad
Grado de entretenimiento
_____________________
Alumna:
USUARIOS (ESTUDIANTES)
BAJA
EXCELENTE
CORRECTA
ALTA
ATRIBUTO DE CALIDAD
Motivacin e inters
Diseo
Contenidos
Funcionalidades
203
UNIVERSIDAD TECNICA DE MACHALA
Usabilidad
Grado de entretenimiento
_____________________
Alumna:
USUARIOS
BAJA
EXCELENTE
CORRECTA
ALTA
ATRIBUTO DE CALIDAD
Motivacin e inters
Diseo
Contenidos
Funcionalidades
Usabilidad
Grado de entretenimiento
204
UNIVERSIDAD TECNICA DE MACHALA
_____________________
Alumna:
CONCLUSIONES
205
UNIVERSIDAD TECNICA DE MACHALA
RECOMENDACIONES
Es preciso que esta institucin establezca estos tipos de servicios para ganar ms
prestigio a nivel educativo y profesional, el mismo que es un paso importante
dentro de la comunidad guabea y del pas.
206
UNIVERSIDAD TECNICA DE MACHALA
BIBLIOGRAFA
http://www.desarrolloweb.com/manuales/xajax.html
http://www.mundojavascript.com
JotForm, Easiest Form Builder, First Web Based WYSIWYG Form Builder.
Create and publish web forms using your browser, Consulta 8 de Enero del
2010
http://jotform.com/index.php
http://www.gamarod.com.ar/recursos/tutoriales/php/
http://tutorialzine.com
http://www.proclave.com/esp/cursos/glosario.htm
207
UNIVERSIDAD TECNICA DE MACHALA
http://www.programacion.com/php/tutorial/php/
http://hungred.com/useful-information/php-form-validation-snippets/
http://www.original-design.es/tutosphp.php
208
UNIVERSIDAD TECNICA DE MACHALA
GLOSARIO
209
UNIVERSIDAD TECNICA DE MACHALA
210
UNIVERSIDAD TECNICA DE MACHALA
Blog: Cuaderno de bitcora. Lugar que una persona crea en Internet con el
fin de reflejar sus opiniones, gustos, experiencias, etc. Estos sitios se
encuentran generalmente en servidores preparados para esta labor.
211
UNIVERSIDAD TECNICA DE MACHALA
Campo: En el mundo de las bases de datos, cada una de los datos que
forman un registro (o ficha). Por ejemplo, en la ficha de cada proveedor
tendramos campos como su nombre, su direccin postal, su telfono, etc.
Cliente: Un ordenador que accede a los recursos que red que otro
ordenador (el servidor) deja a su disposicin.
Coma (fija y flotante): La expresin "coma fija" (en ingls fixed point) se
usa para referirse a nmeros con una cantidad de cifras decimales
constantes. Estos nmeros son ms sencillos de manipular (pero menos
tiles en la prctica) que los nmeros en "coma flotante" (en ingls,
Floating Point), con un nmero variable de cifras decimales.
212
UNIVERSIDAD TECNICA DE MACHALA
213
UNIVERSIDAD TECNICA DE MACHALA
214
UNIVERSIDAD TECNICA DE MACHALA
HD: Disco duro (Hard Disk) // HD: Alta densidad (High Density).
215
UNIVERSIDAD TECNICA DE MACHALA
216
UNIVERSIDAD TECNICA DE MACHALA
217
UNIVERSIDAD TECNICA DE MACHALA
218
UNIVERSIDAD TECNICA DE MACHALA
Pginas Web: Forma de denominar a las hojas creadas con html que se
manejan dentro del entorno WWW.
219
UNIVERSIDAD TECNICA DE MACHALA
Registro: En el mundo de las bases de datos, cada una de las fichas que
componen una tabla.
220
UNIVERSIDAD TECNICA DE MACHALA
221
UNIVERSIDAD TECNICA DE MACHALA
ANEXOS
BIBLIOTECA
SECRETARIA
222
UNIVERSIDAD TECNICA DE MACHALA
ADMINISTRACIN
223
UNIVERSIDAD TECNICA DE MACHALA
224
UNIVERSIDAD TECNICA DE MACHALA
La pantalla de presentacin del sitio web posee el diseo ambientado a los usuarios tanto
alumnos como profesores, el mismo que les permite observar cada uno de los mens de
navegacin de acuerdo a sus necesidades.
Posee un entorno amigable que detalla cada una de las actividades que se desarrollan
dentro de la institucin, varias opciones como: hacer comentarios, descargar archivos,
enlaces con sitios web y ayuda.
Y como en toda institucin no puede faltar su foro para poder comentar o sugerir a cerca
de los programas que se desarrollen dentro de la institucin.
225
UNIVERSIDAD TECNICA DE MACHALA
El registro de usuario le permite ingresar sus datos y obtener su propia cuenta si estos
fueron correctamente ingresados hacer clic sobre el botn REGISTRAR, el mismo que
despus le pedir guardar los datos y usted tendr que oprimir el botn ACEPTAR y si no
est de acuerdo o desea modificar alguno de los datos recientemente ingresados oprima
el botn CANCELAR, lo que le permite acceder a nuestras pginas como invitado, por
las cuales podr navegar de acuerdo a lo establecido por el sistema.
AVISOS DE ALERTAS
El sistema cuenta con sus respectivos avisos de alerta en cada uno de los campos que
componen los respectivos formularios estos estn validados de acuerdo al dato que se
sugiere que ingrese el usuario.
226
UNIVERSIDAD TECNICA DE MACHALA
Ejemplo.:
El campo contrasea y confirmar contrasea debe ser igual, caso contrario la validacin
del sistema le arrojara su respectiva alerta.
INICIO DE SESIN
227
UNIVERSIDAD TECNICA DE MACHALA
Una vez registrados podemos iniciar sesin y acceder al sistema como invitado.
Una vez que ingresamos como usuario podemos tener acceso al portal y navegar en el
mismo de acuerdo a lo establecido por el sistema, adems encontramos un link en el cual
hacemos clic y nos permite editar nuestros datos.
El men del sistema cuenta con sus respectivas opciones en la que les detallamos las
siguientes:
228
UNIVERSIDAD TECNICA DE MACHALA
Botn Inicio: Nos permite regresar a la pgina inicial del portal web.
Botn Quienes Somos: Nos despliega un submen que nos permitir conocer ms a
cerca de la institucin, tanto sus objetivos, sus orgenes, actualidad educativa y su
personal laboral.
Botn Matriculas: Este link nos permite acceder a las inscripciones a un submen donde
el estudiante podr realizar su matriculacin de acuerdo a cada uno de los requisitos que
se detallan en los campos del formulario de registro.
229
UNIVERSIDAD TECNICA DE MACHALA
En el formulario est compuesto por varios campos que son necesarios ser llenadas en
su totalidad, ya que esta informacin es primordial la institucin, este formulario esta
valido al igual que los registros de usuario lo cual indica que la informacin que usted
ingrese debe ser concreta y lgica a lo que se solicita.
230
UNIVERSIDAD TECNICA DE MACHALA
Una de las restricciones se da aqu en Ver Matriculas por Internet ya que solo el
administrador tiene acceso a esta informacin.
231
UNIVERSIDAD TECNICA DE MACHALA
232