Академический Документы
Профессиональный Документы
Культура Документы
proveedor.
Manipulacin de datos a travs de un programa
http://www2.ing.puc.cl/~jnavon/page2
2
3
4
http://es.wikipedia.org/wiki/Aplicacin_web
J2EE Desarrollo de aplicaciones WEB, Autor: Benjamin Aumaille, Ed. Ediciones ENI, Pag. 26
http://es.wikipedia.org/wiki/Internet
http://es.wikipedia.org/wiki/Intranet
6
7
8
http://www.offclick.com/intranet.htm
http://es.wikipedia.org/wiki/Extranet
http://arquitecturaestefany.blogspot.com/2009/03/extranet.html
II.
Usuarios
Informacin
Intranet
Internos
Extranet
Internet
Cualquier usuario
Objetivos diferentes
http://www.lawebera.es/manuales/primeros-pasos/como-empezar/tipos-de-webs.php
Personales: Al igual que los anteriores, son un medio de expresin de su creador o creadores. Sus
objetivos y su audiencia pueden ser de lo ms variopinto. Dentro de este grupo puede haber de todo
desde colecciones de fotos de la familia hasta tratados cientficos de primer orden.
10
http://www.monografias.com/trabajos5/laweb/laweb.shtml
10
11
2.5 OOHDM11
Las metodologas tradicionales de ingeniera de software, o las metodologas para sistemas de desarrollo de
informacin, no contienen una buena abstraccin capaz de facilitar la tarea de especificar aplicaciones
hipermedia. El tamao, la complejidad y el nmero de aplicaciones crecen en forma acelerada en la actualidad,
por lo cual una metodologa de diseo sistemtica es necesaria para disminuir la complejidad y admitir
evolucin y reusabilidad.
Producir aplicaciones en las cuales el usuario pueda aprovechar el potencial del paradigma de la navegacin
de sitios web, mientras ejecuta transacciones sobre bases de informacin, es una tarea muy difcil de lograr.
En primer lugar, la navegacin posee algunos problemas. Una estructura de navegacin robusta es una de las
claves del xito en las aplicaciones hipermedia. Si el usuario entiende dnde puede ir y cmo llegar al lugar
deseado, es una buena seal de que la aplicacin ha sido bien diseada.
Construir la interfaz de una aplicacin web es tambin una tarea compleja; no slo se necesita especificar
cules son los objetos de la interfaz que deberan ser implementados, sino tambin la manera en la cual estos
objetos interactuarn con el resto de la aplicacin. En hipermedia existen requerimientos que deben ser
satisfechos en un entorno de desarrollo unificado. Por un lado, la navegacin y el comportamiento funcional de
la aplicacin deberan ser integrados. Por otro lado, durante el proceso de diseo se debera poder desacoplar
las decisiones de diseo relacionadas con la estructura navegacional de la aplicacin, de aquellas
relacionadas con el modelo del dominio.
OOHDM propone el desarrollo de aplicaciones hipermedia a travs de un proceso compuesto por cuatro
etapas: diseo conceptual, diseo navegacional, diseo de interfaces abstractas e implementacin.
12
2.5.4 Implementacin
En esta fase, el diseador debe implementar el diseo. Hasta ahora, todos los modelos fueron construidos en
forma independiente de la plataforma de implementacin; en esta fase se toma en cuenta el entorno particular
en el cual se va a correr la aplicacin.
13
Figura 1.5: Paquete de interfaz con la base de datos, dentro del Diseo Conceptual
La clase abstracta que define el comportamiento bsico de las entidades del modelo y concentra la lgica de
interaccin con la base de datos ser denominada EntidadAbstracta. Para cumplir con los objetivos
propuestos, esta clase debe ser capaz de crear una conexin con la base de datos, ejecutar consultas y
retornar los resultados para ser procesados. Por una cuestin de eficiencia, la creacin de conexiones a la
base de datos podra ser delegada a un singleton, es decir, una clase capaz de controlar su instanciacin para
14
15
16
17
18
Figura 1.9: Generacin de un documento HTML a partir de una fuente XML + XSL
El lenguaje XSLT (Transformaciones XSL40) se utiliza para componer hojas de estilo XSL. Estos documentos
contienen instrucciones que mediante el uso de Xalan-Java, por ejemplo, sirven para llevar a cabo las
transformaciones y producir un documento de salida, una secuencia de caracteres o de bytes, un DOM
(Modelo de Objetos de Documento), etc. En el caso particular mencionado anteriormente, se desea obtener un
documento de salida con formato HTML a partir de un par de documentos XML / XSL.
III.
Lenguaje XHTML
XHTML es una reformulacin de HTML 4.0 y XML 1.0. HTML fu concebido como un lenguaje
para el intercambio de documentos cientficos y tcnicos. Siendo que HTML es una aplicacin
SGML, se vali de un reducido grupo de etiquetas para la formulacin de documentos relativamente
simples.
HTML se populariz rpidamente y super las expectativas que motivaron su creacin. La flexibilidad
de HTML y la constante invencin de nuevos elementos para ser usados con este lenguaje, ha creado
el desorden y falta de compatibilidad con algunos navegadores, cosa que con su reformulacin en el
XHTML, se pretende corregir.
Por su lado, XML es un simple y muy flexible formato de texto derivado de SGML diseado
especialmente para documentos web. Permite a los desarrolladores crear sus propias etiquetas.
A diferencia del HTML, XML es muy estricto en su estructura. Ms que por el formato, XML se
preocupa de la estructura. En HTML, es posible visualizar documentos mal estructurados, etiquetas
mal anidadas o inconclusas, en XML si se abre una etiqueta, debe cerrarse.
19
Al ser una recomendacin y un estndar, es necesario observar que nuestros documentos XHTML
deben respetar ciertas reglas bsicas :
1. Todos los elementos deben estar debidamente jerarquizados
Cuando se escriba un documento es muy comn que erroneamente se cierren elementos de forma
inadecuada, por ejemplo:
<p><i>El <b>Veloz murcielago hind</b> coma feliz cardillo y caa</p></i>
En este ejemplo, se ha cerrado la etiqueta de prrafo antes de lo debido, en algunos navegadores esto
pasar desapercibido, sin embargo la forma correcta es la siguiente:
<p><i>El <b>Veloz murcielago hind</b> coma feliz cardillo y caa</i></p>
2. Todo documento debe estar bien formado
Lo cual quiere decir que losdocumentos deben tener al menos la siguiente estructura:
<html>
<head> ... </head>
<body> ... </body>
</html>
3. Los nombres de las etiquetas deber estar en minsculas
Al ser XHTML una aplicacin XML, est hace diferencia entre maysculas y minsculas, por lo que
<BODY> y <body> son dos cosas muy diferentes
20
En versiones anteriores del HTML era posible dejar etiquetas sin cerrar, incluso algunos autores te
deca que no era necesario cerrar tal o cual etiqueta, en XHTML es obligatorio que todas las etiquetas
sean cerradas, por lo que:
<p>Esto es un prrafo
Es incorrecto, en su lugar debe ser:
<p>Esto es un prrafo</p>
El cual tiene su etiqueta de cierre correspondiente. en los casos donde las etiquetas son unarias como
<br>, <hr>, <img> y otras, el cierre se da dentro de ella misma, terminando la etiqueta con />, por
ejemplo:
Este texto hace un <br /><b>Salto de Lnea</b> y despus pone una lnea abajo <br /><hr />
5. Los nombres de los atributos deben ir en minsculas
Por lo antes mencionado en el punto 3, todos los nombres de atributos para una etiqueta deben ir en
minsculas, por ejemplo:
<img SRC="imagen.gif"> es invlido, en su lugar <img src="imagen.gif" /> sera lo correcto
6. Los valores de los atributos deben ir entre comillas
Todos los documentos XHTML vlidos deben llevar un elemento llamado DOCTYPE, el cual no es
parte del documento en s, sino que define el tipo de DTD (Document Type Definition o Definicin de
tipo de documento) a emplear en los documentos, es obligatorio y puede ser uno de estos tres:
21
XHTML 1.0 Strict: Se usa cuando se desea utilizar al 100% XHTML, su nombre lo dice bien
claro, es XHTML estricto, la declaracin del mismo es como sigue: <!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1strict.dtd">
HTML 1.0 Transitional: Es el ms usado ya que permite manejar elementos de XHTML y
HTML 4.01, adems de que se debe usar cuando el navegador no soporta correctamente CSS,
su declaracin es la que sigue:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset: Se debe usar cuando se manejan frames, su declaracin es la siguiente:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
22
12
23
Es importante hacer notar que muchas veces se requiere ejecucin de cdigo tanto
del lado cliente como del lado servidor.
Los lenguajes de programacin ms utilizados en la actualidad en la construccin de
sitios web son:
Lenguajes del lado cliente:
HTML. Lenguaje basado en etiquetas
Java Script. A travs de este lenguaje es posible el establecimiento de cdigo
que ser ejecutado en el propio navegador
Applets de Java
Visual Basic Script
FLASH
24
CSS
CGI
PERL
ASP
PHP
JSP
Lenguajes del lado cliente servidor
DHTML
XML
Programando con PHP
Sintaxis de PHP
La ventaja que tiene PHP sobre otros lenguajes de programacin que se ejecutan en
el servidor (como podran ser los script CGI Perl), es que nos permite intercalar las
sentencias PHP en las paginas HTML, es un concepto algo complicado de entender si
no se ha visto nunca como funciona unas pginas PHP o ASP.
Vamos a ver un ejemplo sencillo para comprenderlo mejor. Seguiremos este criterio
durante todo el manual.
<html>
<head>
<title>Ejemplo de PHP</title>
25
26
Nombre
Ejemplo
+
*
/
%
++
--
Suma
Resta
Multiplicacin
Divisin
Mdulo
Suma
Resta
5
7
6
4
7
1
1
+6
-9
*3
/8
%2
$a++
$a--
Ejemplo:
<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
<?php
$a = 8;
$b = 3;
echo $a + $b,"<br>";
echo $a - $b,"<br>";
echo $a * $b,"<br>";
echo $a / $b,"<br>";
$a++;
echo $a,"<br>";
$b--;
echo $b,"<br>";
?>
</body>
</html>
Comparacin
Los operadores de comparacin son usados para comparar valores y as poder tomar
decisiones.
Operador Nombre Ejemplo Devuelve verdadero cuando:
== Igual $a == $b $a es igual $b
!= Distinto $a != $b $a es distinto $b
< Menor que $a < $b $a es menor que $b
> Mayor que $a > $b $a es mayor que $b
<= Menor o igual $a <= $b $a es menor o igual que $b
>= Mayor o igual $a >= $b $a es mayor o igual que $b
27
<?php
if (condicin)
{
Sentencias a ejecutar cuando la
condicin es cierta.
}
else
{
Sentecias a ejecutar cuando la
condicin es falsa.
}
?>
La sentencia if ejecuta una serie de instrucciones u otras dependiendo de la condicin
que le pongamos. Probablemente sea la instruccin ms importante en cualquier
lenguaje de programacin.
Con la sentencia switch podemos ejecutar unas u otras instrucciones dependiendo del
valor de una variable, en el ejemplo anterior, dependiendo del valor de la variable
$posicion se ejecuta el bloque 1 cuando el valor es "arriba", el bloque 2 cuando el
valor es "abajo" y el bloque 3 si no es ninguno de los valores anteriores.
Bucles
Los bucles nos permiten iterar conjuntos de instrucciones, es decir repetir la ejecucin
de un conjunto de instrucciones mientras se cumpla una condicin.
Sentencia while
<?php
while (condicin)
{
intrucciones a ejecutar.
}
?>
Mientras la condicin sea cierta se reiterar la ejecucin de las instrucciones que
estn dentro del while.
<html>
<head>
<title>Ejemplo de PHP</title>
</head>
<body>
Inicio<BR>
<?php
28
<?php
function Nombre(parametro1, parametro2...)
{
instruccin1;
instruccin2;
instruccin3;
instruccin4;
return valor_de_retorno;
}
?>
Manejo de cadenas
Dado el uso del lenguaje PHP el tratamiento de cadenas es muy importante, existen
bastantes funciones para el manejo de cadenas, a continuacin explicaremos las ms
usadas.
* strlen(cadena). Nos devuelve el nmero de carcteres de una cadena
* split(separador,cadena). Divide una cadena en varias usando un carcter separador.
* sprintf(cadena de formato, var1, var2...). Formatea una cadena de texto al igual
que printf pero el resultado es devuelto como una cadena.
* substr(cadena, inicio, longitud). Devuelve una subcadena de otra, empezando por
inicio y de longitud longitud.
29
30
31
<?php
mail(destinatario, tema, texto del mensaje);
?>
En el parmetro destinatario pondremos la direccin de email a donde se enviar el
mensaje, en el parmetro tema el tema o subject del mensaje y el parmetro texto
del mensaje el cuerpo del mensaje en formato texto plano.
Existe una sintaxis extendida de la instruccin mail( ) que nos permite aadir
informacin adicional a la cabecera del mensaje.
<?php
mail(destinatario, tema, texto del mensaje, informacin adicional de cabecera);
?>
En la informacin de cabecera podremos incluir parmetros adicionales al mensaje
como Reply-To:, From:, Content-type:... que nos permiten tener un mayor control
sobre el mensaje.
A su vez, si el sitio web realiza conectividad a base de datos esta decisin tiene
tomarse de una manera conjunta, entre las tecnologas de motores de bases de datos
que ms se utilizan tenemos:
Microsoft SQL Server
Mysql
Oracle
En secciones posteriores se detallara la utilizacin del motor de base de datos Mysql.
Tarea:
Realizar investigacin de versiones gratuitas de SQL Server y Oracle
32
III.
13
14
15
ODBC,
JDBC,
PDO O NATIVA
http://news.netcraft.com/
http://www.apache.org/
http://www.iis.net/
33
Oracle
SQL Server
Access
Sybase
Interbase
Firebird
C/D-ISAM
LINC Developer
System Z
http://www.easysoft.com/developer/interfaces/odbc/linux.html
http://phplens.com/phpeverywhere/node/view/9
34
using
using
using
using
System;
System.Collections.Generic;
System.Text;
System.Data.Odbc;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
OdbcConnection DbConnection = new
OdbcConnection("DSN=SAMPLE_ISAM");
DbConnection.Open();
OdbcCommand DbCommand = DbConnection.CreateCommand();
DbCommand.CommandText = "SELECT * FROM NATION";
OdbcDataReader DbReader = DbCommand.ExecuteReader();
int fCount = DbReader.FieldCount;
Console.Write( ":" );
for ( int i = 0; i < fCount; i ++ )
{
String fName = DbReader.GetName(i);
Console.Write( fName + ":" );
}
Console.WriteLine();
while( DbReader.Read())
{
Console.Write( ":" );
18
http://www.easysoft.com/developer/languages/csharp/CSharpODBCExample1.cs
35
DbReader.Close();
DbCommand.Dispose();
DbConnection.Close();
}
JDBC
JDBC (Java Database Connectivity) es una plataforma estndar de acceso a bases de
datos desde Java
DB2
FoxPro
Ingres
InterBase
LDAP
MS Access
MS SQL Server
MySQL
Oracle
Paradox
PostgreSQL
Progress
Sybase
http://www.herongyang.com/jdbc/JDBC-ODBC-SQL-Server-Connection.html
36
} catch (Exception e) {
System.err.println("Exception: "+e.getMessage());
}
http://www.exampledepot.com/egs/java.sql/ConnectOracle.html
37
IV.
Debido a
V.
Conexin
Ingrese a su localhost y crea una base de datos denominada familia que contenga a
la tabla agenda donde los campos de dicha tabla se describen a continuacin
38
Una vez creada, se deber realizar el cdigo en HTML la cual haga referencia a los
campos mostrados con anterioridad, el cdigo lucir de la siguiente manera:
<form action="InsertarPHP.php" method="POST">
Escribe tu nombre:
<input type="text" maxlength="10" size="10" name="nom"> <br><br>
Escribe tu direccion:
<input type="text" maxlength="10" size="10" name="dir"> <br><br>
Escribe tu Telefono:
<input type="text" maxlength="10" size="10" name="tel"> <br><br>
<br><br><br>
<input type="submit" value="ENVIAR DATOS">
input type="reset" value="BORRAR DATOS">
</form>
Una vez que tienes la interfaz, que es el cdigo en HTML, el cdigo PHP que va a
realizar la ejecucin es el siguiente:
Este cdigo va a hacer referencia al archivo denominado conectar, y su nica
funcin es proveer una conexin con la base de datos y as no estar repitiendo de
manera consecutiva el mismo cdigo. Cuando ya se tiene el cdigo en un archivo y
se emplea el mismo, utiliza la instruccin require(" "); y en este caso quedar de la
siguiente forma
39
40
Actividad
Lee detenidamente las oraciones y ve realizando paso a paso cada una de
las instrucciones marcadas.
Crea una base de datos denominada Super.
41
Consulta de un Registro
En esta ocasin, se va a trabajar con la consulta de un registro de la tabla agenda
que se haba creado previamente, para lo cual se deben de realizar los siguientes
pasos:
Contar con el archivo conectar.php; recuerda que en este archivo contiene las
instrucciones para conectarte al servidor, y a la base de datos.
La interfaz de esta pgina, va a ser sencilla y est dada en primera instancia por el
siguiente cdigo:
<form action="busqueda.php" method="POST">
Escribe el nombre a buscar o consultar:
<input type="text" maxlength="10" name="nom">
<input type="submit" value="buscar ">
</form>
Como puede observarse, este formulario va a hacer referencia a un archivo
denominado bsqueda.php, que es donde se va a realizar la bsqueda del elemento
dentro de nuestra tabla agenda de la base de datos familia; el cdigo de dicho
archivo es el siguiente:
<?
require("conectar.php");
$v1=$nom;
$resul=mysql_query("Select * from agenda where(Nombre like '$v1')");
if ("$resul")
{
42
}
}
else{
}
mysql_close();
?>
La descripcin de este cdigo es la siguiente:
$resul=mysql_query("Select * from agenda where(Nombre like
'$v1')");
Esta lnea, indica que se va a generar una consulta de la tabla agenda donde el
criterio de bsqueda ser el campo Nombre que sea igual a lo que contenga la
variable $v1.
while ($regis=mysql_fetch_row($resul))
En esta lnea de cdigo, la instruccin especifica mysql_fetch_row, devuelve el
arreglo con los valores de la consulta, que sera nuestro criterio ($result).
foreach($regis as $clave)
Esta lnea tiene como finalidad asignar a una variable temporal lo que contenga
$regist.
mysql_close();
Observe que despus de haber mostrado el archivo especificado, se debe de cerrar la
conexin a la base de datos que se habilito en el archivo conectar.php, esto con la
finalidad de que no puedan generarse errores sobre el manejo de datos.
Las pantallas sern algo similar a las siguientes
43
Actividad
De la Base de datos anterior (super), debern de utilizar el mtodo de
bsqueda para localizar los artculos por medio de su cdigo y nombre; de
ambas tablas (damas y caballeros).
Eliminacin de un registro con confirmacin
44
45
mysql_close();
?>
Como puede observarse, en esta ocasin se est haciendo el llamado a un tercer
archivo denominado SiConfirmoEliminacion.php, este archivo lo que hace
realmente es eliminar el archivo que se encontr previamente en el anterior
(eliminar.php), es decir si uno quisiera eliminar un registro de la base de datos con
la plena seguridad de que es ese, entonces solo se tendra que hacer el archivo
SiConfirmoEliminacion.php.
46
47
48
Actividad
De la Base de datos anterior (super), debern de utilizar el mtodo de
despliegue general por cada una de las tablas (damas, caballeros).
Como ya se tiene todas las acciones o las ms comunes, ahora debern de
entregar ya todo integrado es decir trabajar en el aspecto de presentacin
a todo este trabajo de practica utilizando hojas de estilo, realizar la
aplicacin lo ms detallado posible y obviamente entendible.
49
50
51
52