TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
Introducción a la programación en internet
1. Introducción a la programación en
internet
Conceptos de aplicaciones Web
La diferencia entre escritorio y web.
2. Aplicación Desktop
• También llamadas de Escritorio, es aquella
que está instalada en la computadora del
usuario, que es ejecutada directamente por el
sistema operativo, cuyo rendimiento depende
de las especificaciones de la computadora.
3. Ventajas
• Habitualmente su ejecución no requiere comunicación
con el exterior, sino que se realiza en forma local.
• Son más robustas y estables
• En tiempo de respuesta en muy rápido
• Pueden ser muy seguras
4. Desventajas
• Su acceso se limita al ordenador donde están
instaladas.
• Son dependientes del sistema operativo que
utiliza la computadora.
• Requieren instalación personalizada.
• Requieren actualizaciones personalizadas.
• Suelen tener requerimientos especiales de
software y librerías.
5. Aplicación Web
• También llamadas Online, es aquella que está instalada en
un Servidor y su ejecución requiere disponer de una
computadora con conexión a Internet y de un Navegador.
6. Ventajas
• Portabilidad: se ejecutan en cualquier equipo de
computo
• La información que manejan es accesible a través de
Internet
• Son aplicaciones muy ligeras, el navegador no tiene el
programa, por consiguiente el navegador no debe ser
muy pesado.
• Consumen muy pocos recursos
• Son fáciles de actualizar.
• Su funcionalidad es independiente del sistema
operativo
• No hay problemas de incompatibilidad entre
versiones, porque el usuario trabaja con la misma.
7. Desventajas
• Es necesaria una conexión a Internet.
• La comunicación con el servidor que ejecuta la
aplicación establece una dependencia a una
buena conexión a Internet.
• El servidor debe tener las prestaciones necesarias
para la ejecutar la aplicación de manera fluida.
• El tiempo de ejecución, puede ser lento
dependiendo de las características de la
computadora y de la conexión a Internet.
8. El usuario desde cualquier parte del mundo y
desde cualquier dispositivo (PC, laptop,
mobile), desea ver donde será el próximo
@BeerTwit.
1.-El usuario tiene que ingresar la URL de la
página en su navegador (*1). El navegador por
detrás se encargará de hacer un request
(solicitud) al servidor Web usando el
protocolo de comunicación HTTP (*2)
(internet), y en este caso usará el método GET,
porque sólo quiere obtener información
9. • El servidor Web recibe el request y envía un
response (sólo html) al navegador. Los
navegadores no entienden el código ASP, PHP, o
JSP, ellos sólo muestran contenido en html (*3),
es por eso que todos los servidores Web después
de procesar un request devuelven sólo html (que
puede incluir Javascript (*4)), el html generado
debe ser un formulario en html, para que el
usuario pueda enviar su información. Por otro
lado si el usuario ha iniciado sesión con
anterioridad es posible que su sesión este activa,
y no tenga que iniciar sesión nuevamente.
10. • El usuario llena su información, user y password, y
hace clic en el famoso botón “Sign in”. El navegador
por detrás recolectará esta información, y en este caso
que se desea enviar esa información al servidor debe
estar usando el método POST. Todos los lenguajes usan
POST para enviar información a una página, ya sea
ASP.NET, Php, JSP, etc (*5). En el caso especial de
ASP.NET cuando están desarrollando por defecto todos
los formularios se envían usando POST, pueden hacer
“View Source” de una página en el navegador y verán
que el formulario html tiene el método POST. Pueden
ver también esto usando la herramienta Fiddler. Con
GET también se puede enviar variables, pero no es
técnicamente enviar información, es mas bien, un
obtener información con estos parámetros.
11. • El request llega al servidor Web, y se ejecutará el
código de servidor Php, Jsp, o ASP, que se conectará
con la base para verificar si existe el usuario y si el
password coincide con el enviado por el usuario.
• Si el usuario y el password son validos, el código de
servidor (login.php, login.jsp, o
login.aspx), redireccionará el request a otra página
showUpdates.php, la cual se conecta nuevamente a la
base de datos para traer todos los updates de los
amigos del usuario, después de procesar la página, el
servidor envía el response (sólo html) al usuario.
• El usuario ve en una página las últimas actualizaciones
de sus amigos, y parece que esta semana no habrá
@BeerTwit, así que tendrá que inventar alguna excusa
para generar uno nuevo.
12. Introducción a XAMPP
• XAMPP es un servidor independiente de
plataforma, software libre, que consiste principalmente
en la base de datos MySQL, el servidor web Apache y
los intérpretes para lenguajes de script: PHP y Perl. El
nombre proviene del acrónimo de X (para cualquiera
de los diferentes sistemas
operativos), Apache, MySQL, PHP, Perl.
• El programa está liberado bajo la licencia GNU y actúa
como un servidor web libre, fácil de usar y capaz de
interpretar páginas dinámicas. Actualmente XAMPP
está disponible para Microsoft
Windows, GNU/Linux, Solaris y MacOS X.
13.
14. ¿Qué es PHP?
• PHP (acrónimo dePHP: HypertextPreprocessor)
es un lenguaje de código abierto muy popular
especialmente adecuado para desarrollo web
y que puede ser incrustado en HTML.
• Una respuesta corta y concisa, pero, ¿qué
significa realmente? Un ejemplo nos aclarará
las cosas:
15. • En lugar de usar muchos comandos para mostar HTML
(como en C o Perl), páginas PHP contienen HTML con
código incluido en el mismo que hace "algo" (en este
caso, mostrar "Hola ¡soy un script PHP!). El código PHP
está entre medio de etiquetas de comienzo y final
especiales<?php y ?> que nos permitirán entrar y salir
del "modo PHP".
• Lo que distingue a PHP de algo lado-cliente como
Javascript, es que el código es ejecutado en el
servidor, generando HTML y enviándolo al cliente. El
cliente recibirá los resultados de ejecutar el script, sin
ninguna posibilidad de determinar qué código ha
producido el resultado recibido. El servidor web puede
ser incluso configurado para que procese todos los
archivos HTML con PHP y entonces no hay manera que
los usuarios puedan saber que tienes debajo de la
manga.
17. Arquitectura cliente-servidor
• La arquitectura cliente-servidores un modelo de aplicación
distribuida en el que las tareas se reparten entre los proveedores
de recursos o servicios, llamados servidores, y los
demandantes, llamados clientes. Un cliente realiza peticiones a otro
programa, el servidor, quien le da respuesta. Esta idea también se
puede aplicar a programas que se ejecutan sobre una sola
computadora, aunque es más ventajosa en un sistema
operativo multiusuario distribuido a través de una red de
computadoras.
• En esta arquitectura la capacidad de proceso está repartida entre
los clientes y los servidores, aunque son más importantes las
ventajas de tipo organizativo debidas a la centralización de la
gestión de la información y la separación de responsabilidades, lo
que facilita y clarifica el diseño del sistema.
18.
19. • La separación entre cliente y servidor es una separación de
tipo lógico, donde el servidor no se ejecuta necesariamente
sobre una sola máquina ni es necesariamente un sólo
programa. Los tipos específicos de servidores incluyen los
servidores web, los servidores de archivo, los servidores del
correo, etc. Mientras que sus propósitos varían de unos
servicios a otros, la arquitectura básica seguirá siendo la
misma.
• Una disposición muy común son los sistemas multicapa en
los que el servidor se descompone en diferentes programas
que pueden ser ejecutados por
diferentes computadoras aumentando así el grado de
distribución del sistema.
• La arquitectura cliente-servidor sustituye a la arquitectura
monolítica en la que no hay distribución, tanto a nivel físico
como a nivel lógico.
20. • La red cliente-servidor es aquella red de comunicaciones en
la que todos los clientes están conectados a un servidor, en
el que se centralizan los diversos recursos y aplicaciones
con que se cuenta; y que los pone a disposición de los
clientes cada vez que estos son solicitados. Esto significa
que todas las gestiones que se realizan se concentran en el
servidor, de manera que en él se disponen los
requerimientos provenientes de los clientes que tienen
prioridad, los archivos que son de uso público y los que son
de uso restringido, los archivos que son de sólo lectura y los
que, por el contrario, pueden ser modificados, etc. Este tipo
de red puede utilizarse conjuntamente en caso de que se
esté utilizando en una red mixta.
21. Características
En la arquitectura C/S el remitente de una solicitud es conocido
como cliente. Sus características son:
• Es quien inicia solicitudes o peticiones, tienen por tanto un papel
activo en la comunicación (dispositivo maestro o amo).
• Espera y recibe las respuestas del servidor.
• Por lo general, puede conectarse a varios servidores a la vez.
• Normalmente interactúa directamente con los usuarios finales
mediante una interfaz gráfica de usuario.
• Al contratar un servicio de redes, se debe tener en cuenta la
velocidad de conexión que le otorga al cliente y el tipo de cable que
utiliza, por ejemplo : cable de cobre ronda entre 1 ms y 50 ms.
22. Al receptor de la solicitud enviada por el cliente se conoce
como servidor. Sus características son:
• Al iniciarse esperan a que lleguen las solicitudes de los
clientes, desempeñan entonces un papel pasivo en la
comunicación (dispositivo esclavo).
• Tras la recepción de una solicitud, la procesan y luego
envían la respuesta al cliente.
• Por lo general, aceptan conexiones desde un gran número
de clientes (en ciertos casos el número máximo de
peticiones puede estar limitado).
• No es frecuente que interactúen directamente con los
usuarios finales.
23. Protocolo HTTP
HTTP es un protocolo de transferencia de hipertexto que se usa en la Web.
HTTP es una sigla que significa HyperText Transfer Protocol, o Protocolo de
Transferencia de Hipertexto. Este protocolo fue desarrollado por las
instituciones internacionales W3C y IETF y se usa en todo tipo de
transacciones a través de Internet.
El HTTP facilita la definición de la sintaxis y semántica que utilizan los
distintos softwares web – tanto clientes, como servidores y proxis – para
interactuar entre sí. Este protocolo opera por petición y respuesta entre el
cliente y el servidor. A menudo las peticiones tienen que ver con
archivos, ejecución de un programa, consulta a una base de
datos, traducción y otras funcionalidades. Toda la información que opera en
la Web mediante este protocolo es identificada mediante el URL o dirección.
La típica transacción de protocolo HTTP se compone de un encabezado seguido
por una línea en blanco y luego un dato. Este encabezado define la acción
requerida por el servidor.
24. • Desde su creación, el HTTP evolucionó en diversas versiones. Entre
ellas, la 0.9, la 1.0, la 1.1 y la 1.2.El protocolo de este tipo opera con
códigos de respuesta de tres dígitos, que comunican si conexión fue
rechazada, si se realizó con éxito, si ha sido redirigida hacia otro
URL, si existe un error por parte del cliente, o bien, por parte del
servidor.
• Las aplicaciones y navegadores web tienden a complementar la
acción del HTTP como ocurre, por ejemplo, con las denominadas
“cookies”, que permiten almacenar información de la
sesión, función de la que no dispone este protocolo, ya que opera
sin estado.
• Hoy en día, muchas de las direcciones de URL requieren la inclusión
del protocolo “http://” para su correcto funcionamiento. Este
protocolo es usualmente seguido del típico código “www” y luego
por la dirección específica del sitio web que se desea visitar
25. Protocolo TCP/IP
• El nombre TCP/IP proviene de dos de los protocolos más
importantes de la familia de protocolos Internet, el Transmission
Control Protocol (TCP) y el Internet Protocol (IP).
• La principal virtud de TCP/IP estriba en que esta diseñada para
enlazar ordenadores de diferentes tipos, incluyendo PCs, minis y
mainframes que ejecuten sistemas operativos distintos sobre redes
de área local y redes de área extensa y, por tanto, permite la
conexión de equipos distantes geográficamente.
• Internet se encuentra estrechamente unida a un sistema de
protocolo de comunicación denominado TCP/IP (Transmission
Control Protocol/ Internet Protocol), que se utiliza para transferir
datos en Internet además en muchas redes de área local.
26. QUE ES TCP/IP Y COMO FUNCIONA?
• TCP/IP es el nombre de un protocolo de conexión de redes. Un protocolo
es un conjunto de reglas a las que se tiene que atener todas las compañías
y productos de software con él fin de que todos sus productos sean
compatibles entre ellos. Estas reglas aseguran que una máquina que
ejecuta la versión TCP/IP de Digital Equipment pueda hablar con un PC
Compaq que ejecuta TCP/IP.
• TCP/IP es un protocolo abierto, lo que significa que se publican todos los
aspectos concretos del protocolo y cualquiera los puede implementar.
• TCP/IP está diseñado para ser un componente de una red, principalmente
la parte del software. Todas las partes del protocolo de la familia TCP/IP
tienen unas tareas asignadas como enviar correo
electrónico, proporcionar un servicio de acceso remoto, transferir
ficheros, asignar rutas a los mensajes o gestionar caídas de la red.
• Una red TCP/IP transfiere datos mediante el ensamblaje de bloque de
datos en paquetes. Cada paquete comienza con una cabecera que
contiene información de control, tal como la dirección del destino, seguida
de los datos. Cuando se envía un archivo a través de una red TCP/IP, su
contenido se envía utilizando una serie de paquetes diferentes.
27. ARQUITECTURA DE NIVELES DE TCP / IP
•
Cuando se diseñó TCP/IP los comités establecidos para crear la familia de
protocolos consideraron todos los servicios que se tenían que proporcionar.
La distribución por niveles se utiliza en muchos sistemas de software; una
referencia común es la arquitectura ideal del protocolo de conexión de redes
desarrollada por la International OrganizationforStandardization, denominada
ISO, aunque en realidad debería decir IOS, ISO desarrollo el modelo de referencia
Open SystemsInterconnection (OSI), o Interconexión de Sistemas abiertos que
consta de siete niveles.
•
•
•
•
•
•
•
APLICACIÓN
PRESENTACION
SESION
TRANSPORTE
RED
ENLACE DE DATOS
FISICO
•
El modelo de referencia OSI se desarrolló para aislar los componentes comunes del
sistema del software en niveles. Cada nivel es independiente del resto.
28. • Cada nivel en el modelo de referencia OSI tiene una tarea
especifica que desempeñar. El objetivo de una arquitectura
por niveles es agrupar servicios afines, a la vez que
conseguir que sean independientes de los demás. Las
tareas son un poco abstractas, porque el modelo OSI es
simplemente eso, un modelo. No esta diseñado para ser un
modelo real, sino un modelo para que lo sigan sistemas
como TCP/IP.
El enfoque OSI por niveles es el que utiliza TCP/IP, aunque
con una ligera modificación. Los niveles son similares,
aunque TCP/IP agrupa varios de los niveles OSI en un único
nivel TCP/IP. Esto se realiza principalmente porque era el
mejor método de implementar los servicios TCP/IP.
29. • Una condición que se necesita para permitir que la arquitectura por
niveles funcione adecuadamente es que cada nivel debe saber lo
que recibe de un nivel por encima o por debajo. Para simplificar
esta tarea, cada nivel añade un bloque de datos al principio y al
final del mensaje que indica que nivel está implicado, además del
resto de información que los otros niveles y la máquina que lo va a
recibir necesitan para manejar el mensaje de forma adecuada. Los
datos dentro del mensaje se ignoran. Esto se denomina
encapsulación, ya que cada nivel añade una cápsula de información
en torno a los datos originales.
•
•
•
•
•
APLICACIÓN
TRANSPORTE
INTERNET
INTERFACE DE RED
FÍSICO
30. Los niveles TCP/IP
• Cada nivel lleva a cabo su propia
encapsulación añadiendo cabecera y bloques
finales que reciben del nivel superior, lo que
tiene como resultado seis conjuntos de
cabeceras y bloques finales en el momento en
que un mensaje llega a la red. Todas estas
cabeceras y bloques finales se pasan a la red
(como por ejemplo Ethernet o Netware) que
puede añadir incluso más información al
principio o al final
31. LOS COMPONENTES DE TCP/IP
Conjunto de Protocolos TCP/IP :
Todos estos servicios conforman TCP/IP, creando
un protocolo potente y eficaz de red. Los
diferentes protocolos dentro de TCP/IP se
mantienen de forma regular por un conjunto de
estándares que son parte de la organización de
Internet.
Los protocolos de transporte controlan el
movimiento de datos entre dos maquinas.
32. • « TCP (Transmission Control Protocol). Protocolo
de Control de Transmisión. Un servicio basado en
una conexión, lo que significa que las máquinas
que envían y reciben datos están conectadas y se
comunican entre ellas en todo momento.
• « UDP (UserDatagramProtocol). Protocolo de
Datagramas a nivel de Usuario. Un servicio sin
conexión, lo que significa que los datos se envían
o reciben estén en contacto entre ellas.
33. • Los protocolos de rutas gestionan el direccionamiento de
los datos y determinan el mejor medio de llegar la destino.
También pueden gestionar la forma en que se dividen los
mensajes extensos y se vuelven a unir en el destino.
« IP (Internet Protocol). Protocolo de Internet. Gestiona la
transmisión actual de datos.
« ICMP (Internet Control Message Protocol).Protocolo de
Control de Mensajes de Internet. Gestiona los mensajes de
estado para IP, como errores o cambios en el hardware de
red que afecten a las rutas.
« RIP (RoutingInformationProtocol). Protocolo de Información
de Rutas. Uno de los varios protocolos que determinan el
mejor método de ruta para entregar un mensaje.
« OSPF (Open Shortest Path First).AbrePrimero el Path Mas
Corto.Un protocolo alternativo para determinar la ruta
34. Las direcciones de red las gestionan servicios y es el
medio por el que se identifican las maquinas, tanto por
su nombre y número único.
« ARP (AddressResolutionProtocol). Protocolo de
Resolución de Direcciones. Determina las direcciones
numéricas únicas de las máquinas en la red.
« DNS (DomainNameSystem). Sistema de Nombres de
Dominio. Determina las direcciones numéricas desde
los nombres de máquinas.
« RARP (Reverse Address Resolution Protocol).Protocolo
de Resolución Inversa de Direcciones. Determina las
direcciones de las máquinas en la red, pero en sentido
inverso al de ARP.
35. Los servicios de usuario son las aplicaciones que un usuario (o
maquina) pueden utilizar.
« BOOTP (BootProtocol). Protocolo de Arranque, como su propio
nombre lo indica, inicializa una máquina de red al leer la
información de arranque de un servidor.
« FTP (File Transfer Protocol), el Protocolo de Transferencia de Ficheros
transfiere ficheros de una máquina a otra.
« TELNET permite accesos remotos, lo que significa que un usuario en
una máquina puede conectarse a otra y comportarse como si
estuviera sentado delante del teclado de la máquina remota.
Los protocolos de pasarela ayudan a que la red comunique
información de ruta y estado además de gestionar datos para redes
locales.
« EGP (Exterior Gateway Protocol). Protocolo de Pasarela
Externo, transfiere información de ruta para redes externas.
« GGP (Gateway-to-Gateway Protocol).Protocolo de Pasarela a
pasarela, transfiere información de ruta entre pasarelas.
« IGP (Interior Gateway Protocol). Protocolo de Pasarela
Interno, transfiere información de ruta para redes internas.
36. Los otros protocolos son servicios que no se adaptan a las
categorías, pero proporcionan servicios importantes en una red.
« NFS (Network File System). Sistema de Ficheros de Red, permite que
los directorios en una máquina se monten en otra y que un usuario
puede acceder a ellos como si estos se encontraran en la máquina
local.
« NIS (Network InformationService). Servicio de Información de
Red, mantiene las cuentas de usuario en todas las
redes, simplificando el mantenimiento de los logins y passwords.
« RPC (RemoteProcedureCall). Llamada de Procedimiento
Remota, permite que aplicaciones remotas se comuniquen entre
ellas de una manera sencilla y eficaz.
« SMTP (Simple Mail Transfer Protocol).Protocolo Simple de
Transferencia de Correo, es un protocolo dedicado que transfiere
correo electrónico entre máquinas.
« SNMP (Simple Network Management Protocol).Protocol Simple de
Gestión de Redes, es un servicio del administrador que envía
mensajes de estado sobre la red y los dispositivos unidos a ésta
37. SERVICIOS BÁSICOS TCP/IP
Sin haber instalado ningún software especial en el sistema de
su computadora, podrá empezar inmediatamente a
proporcionar ciertos servicios TCP/IP básicos en la red.
Existen tres formas de proporcionar servicios TCP/IP, que
trataremos en este orden :
• Sistemas operativos cliente y servicios TCP/IP que estos
proporcionan por defecto.
• Extensiones que se pueden hacer en el sistema operativo
cliente con el fin de proporcionar servicios adicionales,
• Soluciones se servidor dedicado
• Es posible que, para sus necesidades, solo requiera los que
suministra a los que se pueda añadir fácilmente a los
sistemas operativos del cliente.
38. SERVICIOS BÁSICOS AL CLIENTE
• Dado que los sistemas operativos Mac y
Windows 95/98 se consideran ambos
"clientes", proporcionan un número limitado
de servicios por defecto, Si bien existen
programas que pueden dar información de
sistemas operativos. Mac y Windows, éstos
están limitados generalmente en velocidad y
en el número de clientes que pueden manejar.
Por otro lado, Linux se usa frecuentemente
como sistema operativo cliente y servidor.
39. SERVICIOS PREDETERMINADOS DE MAC OS
• Mac Os, por defecto, incluye un solo cliente
TCP/IP; un navegador Web. Sin embargo, tiene
la capacidad de proporcionar la funcionalidad
de un servidor Web y de un servidor de
archivos básico.
40. USO DE WEB FILE SHARING EN SISTEMAS
OPERATIVOS MAC
• Web File Sharing es, un método para compartir archivos desde el
Macintosh al exterior de una conexión TCP/IP usando el protocolo
HTTP. Hay dos modos de funcionamiento de Web File Sharing , el
modo de servidor Web y el modo de <buscador> Web. En le
primero Web File Sharing actúa como servidor Web normal. Puede
seleccionar una página HTLM en su computadora y se servirá
cuando la gente se conecte a ella. Una de las características más
atractivas del modo de servidor Web es que puede traducir
instantáneamente archivos de texto sencillo a paginas Web.
• El sistema operativo Mac, por defecto, no incluye ninguna otra
posibilidad de servidor TCP/IP con el sistema instalado. Lo que tiene
integrado es la opción de compartir archivos llamada Apple Talk (o
Ethernet Talk), que permite usar Apple Talk por el TCP/IP. Se trata
de un producto de servidor que no forma parte del sistema
operativo Mac estándar.
41. SERVICIOS BASICOS PARA WINDOWS 95/98
• Windows se encuentra en el extremo opuesto de Mac Os;
incluye varios clientes TCP/IP pero ninguna posibilidad
predeterminada de dar servicio a plataformas cruzadas.
Dependiendo de la versión del sistema operativo que
tenga, puede ser que haya una función servidora de Web
que se parezca a la de Mac OS. Sin embargo la instalación
predeterminada de Windows 95 no incluye esta
característica. Cuando se instala el protocolo
TCP/IP, Windows también instala varias aplicaciones TCP/IP
que son útiles. Telnet, ping, netstat, traceroute, Internet
Explorer y ARP se instalan todas ellas como parte del
paquete TCP/IP predeterminado para redes en Windows.
Desde un punto de vista del cliente, se trata de un
excelente colección de utilidades que se pueden usar para
diagnosticar problemas de conexión de la red. Dado que
Windows 95 y 98 están diseñados para ser clientes, esta
situación es perfectamente aceptable.
42. • Windows no proporciona por defecto un servicio
TCP/IP, pero es de valor limitado en una red de
plataforma cruzada; la opción de compartir
archivos SMB de Windows, SMB es un sistema
servidor de archivos propio de la plataforma
Windows. Pero con la ayuda del protocolo de
transporte NetBios puede ejecutarse sobre
TCP/IP. Existen clientes de sistemas operativos
Mac y Linux, pero requieren software adicional
para funcionar. Si está ejecutando una red solo
para Windows, no habrá problema
44. Subredes en IP
* Las Subredes son redes físicas distintas que
comparten una misma dirección IP.
* Deben identificarse una de otra usando una máscara
de subred.
* La máscara de subred es de cuatro bytes y para
obtener el número de subred se realiza un operación
AND lógica entre ella y la dirección IP de algún equipo.
* La máscara de subred deberá ser la misma para todos
los equipos de la red IP.
45. Subredes en Direcciones IP
• Ejemplo
• Supóngase que la dirección IP de un equipo es
148.206.257.2
• La máscara de subred es 255.255.255.0
* El equipo por tanto está en la subred
148.206.257.0
46. Funcionamiento de una aplicación
Web
• Una aplicación Web es un conjunto de páginas Web
estáticas y dinámicas. Una página Web estática es
aquélla que no cambia cuando un usuario la solicita: el
servidor Web envía la página alnavegador Web
solicitante sin modificarla. Por el contrario, el servidor
modifica las páginas Web dinámicas antes de
enviarlas al navegador solicitante. La naturaleza
cambiante de este tipo de página es la que le da el
nombre de dinámica .Por ejemplo, podría diseñar una
página para que mostrara los resultados del programa
de salud y dejara cierta información fuera (como el
nombre del empleado y sus resultados) para calcularla
cuando la página la solicite un empleado en particular
47. Procesamiento de páginas Web
estáticas
• Un sitio Web estático consta de un conjunto de páginas
y de archivos HTML relacionadosalojados en unequipo
que ejecutaun servidor Web.Un servidor Web es un
software que suministra páginas Web en respuesta a
laspeticiones de losnavegadores Web. La petición de
una página se genera cuando el usuario hace clic en un
vínculode una página Web, elige un marcador en un
navegador o introduce un URL en el cuadro detexto
Dirección del navegador.El contenido final de una
página Web estática lo determina el diseñador de la
página y no cambiacuando se solicita la página. He aquí
un ejemplo:
49. • El diseñador escribe todas y cada una de las líneas de
código HTML de la página antes decolocarla en el
servidor. El código HTML no cambia una vez colocado
en el servidor y por ello,este tipo de páginas se
denomina página estática.
• Cuando el servidor Web recibe una petición de una
página estática, el servidor lee la solicitud, localiza la
página y la envía al navegador solicitante, como se
muestra en la siguiente figura:
50.
51. Procesamiento de páginas dinámicas
• Cuando un servidor Web recibe una petición para
mostrar una página Web estática, el servidor la envía
directamente al navegador que la solicita. Cuando el
servidor Web recibe una petición para mostrar una página
dinámica, sin embargo, reacciona de distinta forma:
transfiere la página a un software especial encargado de
finalizar la página. Este software especial se denomina
servidor de aplicaciones. El servidor de aplicaciones lee el
código de la página, finaliza la página en función de las
instrucciones del código y elimina el código de la página. El
resultado es una página estática que el servidor de
aplicaciones devuelve al servidor Web, que a su vez la envía
al navegador solicitante. Lo único que el navegador recibe
cuando llega la página es código HTML puro. A
continuación se incluye una vista de este proceso:
52.
53. Creación de una aplicación Web
Etiquetas de PHP
• Cuando PHP interpreta un fichero, busca las etiquetas de apertura y
cierre, que son <?php y ?>, y que indican a PHP dónde empezar y
finalizar la interpretación del código. Este mecanismo permite a
PHP ser incrustado en todo tipo de documentos, ya que todo lo que
esté fuera de las etiquetas de PHP será ignorado por el intérprete.
• PHP también permite las etiquetas abreviadas <? y ?> (las cuales
están desaconsejadas debido a que sólo están disponibles si se
habilitan con la directiva short_open_tagdel fichero de
configuración php.ini, o si PHP se configuró con la opción--enableshort-tags .
• Si un fichero contiene código PHP puro, es preferible omitir la
etiqueta de cierre de PHP al final del fichero. Esto impide que se
añadan espacios en blanco o nuevas líneas después de la etiqueta
de cierre de PHP, los cuales pueden causar efectos no deseados
debido a que PHP iniciará la salida del buffer cuando no había
intención por parte del programador de enviar ninguna salida en
ese punto del script.
55. Salir de HTML
• Cualquier cosa fuera del par de etiquetas de apertura y cierre es
ignorado por el intérprete de PHP, el cual permite que los ficheros
de PHP tengan contenido mixto. Esto permite que PHP sea
embebido en documentos HTML para, por ejemplo, crear plantillas.
<p>Esto va a ser ignorado por PHP y mostrado por el navegador.</p
>
<?php echo 'Mientras que esto va a ser interpretado.'; ?>
<p>Esto también será ignorado por PHP y mostrado por el navegad
or.</p>
• Esto funciona como se espera, porque cuando PHP intercepta las
etiquetas de cierre ?>, simplemente comienza a imprimir cualquier
cosa que encuentre (a excepción de un una nueva línea
inmediatamente despuéshasta que dé con otra etiqueta de
apertura a menos que se encuentre en mitad de una sentencia
condicional, en cuyo caso el intérprete determinará el resultado de
la condición antes de tomar una decisión de qué es lo que tiene que
saltar. Vea el siguiente ejemplo.
56. Usar estructuras con condiciones
Ejemplo #1 Salida avanzada usando condiciones
<?php if ($expresión == true): ?>
Esto se mostrará si la expresión es verdadera.
<?php else: ?>
En caso contrario se mostrará esto.
<?php endif; ?>
• En este ejemplo, PHP saltará los bloques donde la
condición no se cumpla, incluso si están fuera de las
etiquetas de apertura/cierre de PHP, PHP los saltará según
la condición, ya que el intérprete saltará por encima de los
bloques contenidos dentro de una condición que no se
cumpla.
• Para imprimir bloques de texto grandes, es más eficiente
abandonar el modo intérprete de PHP que enviar todo el
texto a través de echo o print.
57. Existen cuatro tipos de pares de etiquetas de apertura y de
cierre que se pueden usar en PHP. Dos de estas, <?php ?> y
<script language="php"></script>, siempre están
disponibles. Las otras dos son las etiquetas abreviadas y las
etiquetas estilo ASP, que se pueden activar o desactivar
desde el fichero de configuración php.ini Aunque algunas
personas encuentran las etiquetas abreviadas y las
etiquetas estilo ASP más convenientes, son menos
portables y generalmente no se recomiendan.
Nota:
Observe también que si se está incrustando PHP dentro de
XML o XHTML necesitará usar las etiquetas <?php ?> para
seguir los estándares.
58. Ejemplo #2 Etiquetas de apertura y de cierre de PHP
1. <?php echo 'si se quiere mostrar documentos XHTML o XML, debe ha
cerse así'; ?>
2. <script language="php">
echo 'algunos editores (como FrontPage) no les gusta
las instruciones de proceso';
</script>
3. <? echo 'esta es la forma más simple, una instrución de procesado SG
ML'; ?>
<?= expresión ?> Esto es una forma abreviada de "<? echo expresión
?>“
4. <% echo 'Quizá use de forma opcional etiquetas de estilo ASP'; %>
<%= $variable; # Esto es una forma abreviada de "<% echo . . ." %>
59. • Las etiquetas vistas en los ejemplos uno y dos
están siempre disponibles; el ejemplo uno es
el más común y recomendado de los dos.
• Las etiquetas abreviadas (ejemplo tres) están
solo disponibles cuando se activan mediante
la directiva short_open_tag del fichero de
configuración php.ini o si PHP se configuró con
la opción --enable-short-tags .
60. Separación de instrucciones
• Como en C o en Perl, PHP requiere que las instrucciones terminen
en punto y coma al final de cada sentencia. La etiqueta de cierre de
un bloque de código de PHP automáticamente implica un punto y
coma; no es necesario usar un punto y coma para cerrar la última
línea de un bloque de PHP. La etiqueta de cierre del bloque incluirá
la nueva línea final inmediata si está presente.
<?php
echo 'Esto es una prueba';
?>
<?php echo 'Esto es una prueba' ?>
<?php echo 'Hemos omitido la última etiqueta de cierre';
61. Comentarios
PHP soporta comentarios 'C', 'C++' y etilo
consola Unix (estilo Perl). Por ejemplo:
<?php
echo 'Esto es una prueba'; // Esto es un comentario estilo c++ de una sola línea
/* Esto es un comentario multi-línea
y otra lína de comentarios */
echo 'Esto es otra pruba';
echo 'Una prueba final'; # Esto es un comentario estilo consola de una sola línea
?>
62. • Los comentarios del estilo "una sola línea" solo
comentan hasta el final de la línea o del bloque actual
de código de PHP, lo primero que suceda. Esto implica
que el código HTML después de // ... ?> o # ... ?> SERÁ
impreso: ?> sale del modo PHP y vuelve al modo
HTML, por lo que // o # no pueden influir en eso. Si la
directiva de configuración asp_tags está activada, actúa
igual que // %> y # %>. Sin embargo, la
etiqueta </script> no sale del modo PHP en un
comentario de una sola línea.
<h1>Esto es un <?php # echo 'simple';?> ejemplo</h1>
<p>El encabezado anterior dirá 'Esto es un ejemplo'.</p>
63. Los comentarios al estilo 'C' finalizan con el
primer */ que se encuentre. Asegúrese de no
anidar comentarios al estilo 'C'. Es muy fácil
cometer este error cuando se intenta
comentar un bloque grande de código.
<?php
/*
echo 'Esto es una prueba'; /* Este comentario causará un problema*/
*/
?>
64. Crear aplicación
• Para crear una aplicación en PHP, se puede
utilizar cualquier procesador de texto, ej. Bloc
de notas o utilizar una aplicación más robusta,
ejemplo Dreamweaver 8 o las diferentes
versiones del mismo. En la siguiente imagen
se muestra la caratula de la aplicación
65.
66. Se elige la opción de PHP y aparece la siguiente pantalla
67. Dreamweaver tiene la opción de Código, Dividir y Diseño.
Nos posicionamos en la opción de Código, y se visualiza
el siguiente código
68.
69. Se guarda el archivo con extensión .PHP. Para poder
visualizar la aplicación el Apache tiene una carpeta
predefinida donde se deben guardar las aplicaciones
70. Se puede crear una carpeta y guardar la página web. Para
poder visualizarla se posiciona en el navegador predefinido
y se escribe locahost o 127.0.0.1 /en nombre de la
aplicación.
71. Para poder ver el código fuente en cualquier
navegador, se tiene una opción para visualizar el
código fuente de la aplicación. Ejemplo el código
resultante se muestra en la siguiente imagen.
72. Agregar controles a un formulario
• Para agregar controles a un formulario, se puede realizar de
diferentes formas. Las más comunes es utilizando el bloc de notas
donde se puede realizar páginas o aplicaciones Web a pie, esto
quiere decir escribirlas línea por línea ejemplo.
73. • La otra forma es por medio del programa
Dreamweaver (cualquier versión) y se muestra en
la siguiente imagen.
74. • Para agregar más controles solamente se deben tanto
escribir, como arrastrar en el programa Dreamweaver. Una ventaja
al utilizar esta herramienta es, al momento de estar escribiendo los
diferentes controles o complementos se puede visualizar el modo
diseño. Otra ventaja es cuando se empieza a declarar los diferentes
atributos se tiene una función de autoayuda.
75. • Nota: Para poder interactuar con los controles
o que en su defecto los mismo nos
proporcionen datos, se necesitan la etiqueta
<FORM></FORM>
76. Organizar controles en un formulario
La forma de organizar los controles de un formulario es
utilizando tablas en html que son fáciles de diseñar.
Ejemplo Prueba_de_formulario.php
77. Formularios Web
Las páginas php.
Hemos visto como crear una página web, darle formato y añadirle
funcionalidades. Una página web puede hacer muchas más cosas, puede mostrar
los datos que obtiene es ese instante de una Base de Datos que reside en un
servidor de Internet, puede comunicarse con otras webs, puede utilizar mapas,
información del tiempo, etc.
En definitiva, una página web puede mostrar información actualizada cada vez
que se ejecuta. Es lo que se conoce como páginas dinámicas, en contraposición a
las páginas estáticas, que siempre muestran la misma información.
Para crear páginas dinámicas hay que emplear un lenguaje de programación web,
como Java, .NET, o PHP. Si quieres ver las diferencias entre estos lenguajes visita
este tema avanzado.
Los lenguajes scripts son lenguajes que no necesitan ser compilados Una
máquina servidor es capaz de interpretar el código fuente y ejecutarlo, lo que hace
de los lenguajes script la mejor solución para programación en entornos web.
Existen muchos lenguajes script (PHP, ASP, .NET, JSP, Perl, Phyton...) que nos
permiten crear webs dinámicas, desde páginas simples hasta potentes
aplicaciones web. Todos los lenguajes tienen sus pros y sus contras, por lo que no
hay ninguno que sea claramente mejor que el resto.
78. Vamos comentar los tres más empleados: ASP, JSP y PHP.
• ASP
Active Server Pages (ASP) es un lenguaje script
propiedad de Microsoft.Su estructura se asemeja
al lenguaje de programación Visual Basic. Es útil
para crear aplicaciones web sencillas,
normalmente con bases de datos de Access.
El principal inconveniente que presenta es que sólo
funciona en servidores Windows, y no en otros
sistemas operativos como Linux. Nos referimos
sólo al servidor que aloja la página, no al sistema
operativo de quien la visita.
79. JSP
Java Server Pages (JSP) es un lenguaje que permite utilizar código Java en
scripts.La tecnología fue creada por Sun Microsystems, y más tarde
liberada para su uso general.
Es un lenguaje potente, que dispone de una gran comunidad por estar
basado en Java. Es muy utilizado por empresas o corporaciones para sus
sitios web y aplicaciones.
La mayoría de los servidores se pueden adaptar para utilizar Java, por lo
que la aplicación puede ser exportada a muchas plataformas.
Normalmente, se utilizan bases de datos MySQL.
PHP
PHP Hypertext Pre-processor (PHP) es el lenguaje script más utilizado en la
web, ya que es sencillo de aprender y está diseñado expresamente para su
uso en web. Esto hace que tenga una gran comunidad de usuarios, lo que
facilita encontrar ejemplos e información utilizando cualquier buscador.
Puede ser ejecutado en la mayoría de sistemas operativos, y utiliza
cualquier gestor de bases de datos, aunque el más usado es MySQL.Es
ideal para webs sencillas y de bajo costo, pero también se pueden crear
aplicaciones complejas, sobre todo si se le añaden librerías, la mayoría
gratuitas.
Es además la opción más económica.
80. ¿Qué es un formulario web?
•
•
•
Un formulario web dentro de una página web permite al usuario introducir datos
los cuales son enviados a un servidor para ser procesados. Los formularios web se
parecen a los formularios de papel porque los internautas llenan dichos
formularios usando casillas de selección, botones de opción, o campos de texto.
Por ejemplo, los formularios web pueden ser usados para introducir datos de
envío o datos de una tarjeta de crédito con el objetivo de solicitar un producto o
bien ser utilizada para solicitar datos (p. ej., al buscar en un motor de búsqueda).
Además de servir como plantillas para nueva información, los formularios web
también pueden ser usados para consultar y mostrar información existente en
forma similar a los formularios decombinación de correspondencia, incorporando
las mismas ventajas. La separación entre la estructura y los datos subyacentes de
un mensaje permite a ambos variar independientemente. El uso de formularios
webs para este propósito evita los problemas asociados con la creación explícita
de páginas web separadas para cada registro en una base de datos.
Los formularios web están definidos en lenguajes de programación
como HTML, Perl, Java o .NET. Las implementaciones de estos lenguajes
usualmente invocan automáticamente los idiomas de la interfaz de usuario y otras
de sus características, tales como el diseño estructural, y tema, minimizando el
tiempo, el costo y el tiempo de programación
81. • Los formularios web están definidos en lenguajes de
programación como HTML, Perl, Java o .NET. Las
implementaciones de estos lenguajes usualmente
invocan automáticamente los idiomas de la interfaz de
usuario y otras de sus características, tales como el
diseño estructural, y tema, minimizando el tiempo, el
costo y el tiempo de programación.
• Los formularios pueden ser combinados con
varios scripts para permitir a los programadores crear
sitios web dinámicos. Esto incluye tanto lenguajes del
lado del servidor como lenguajes del lado del cliente.
82. Lado del cliente
• El estándar de facto en lo que a scripts para webs del lado
del cliente respecta es JavaScript. Utilizar JavaScript en
el DOM es el método más utilizado para generar HTML
dinámico que permite creación y modificación dinámica de
una página web dentro del navegador.
• Aunque los lenguajes del lado del cliente que son usados
en conjunto con los formularios son limitados, estos
comúnmente pueden servir para hacer una prevalidación
de los datos del formulario y/o preparar dichos datos para
enviarlos al programa del lado del servidor.
83. Lado del servidor
• Los programas del lado del servidor pueden hacer un vasto
ordenamiento de tareas para crear sitios web dinámicos — desde
la autenticación de un usuario través de, por ejemplo, LDAP para
enviar y guardar información en una base de datos, hasta verificar
la ortografía de un documento al enviar un correo electrónico — a
diferencia de lo que podría hacer un programa del lado del cliente.
• La mayoría de las peticiones de los programas del lado del servidor
deben pasar por la interfaz de entrada común (CGI) del servidor
web para ejecutar el programa que realiza las tareas.
• La ventaja del lado del servidor sobre el lado del cliente es la
concentración de la funcionalidad en un solo computador (el
servidor), en vez de depender de la implementación en cada
navegador de todas las funciones involucradas.
• Este mismo problema es tremendamente evidente para cualquier
programador que escribe código JavaScript para múltiples
navegadores.
84. Algunos de los lenguajes de scripts comúnmente
usados:
•
•
•
•
•
•
PHP
Perl
Active Server Pages (ASP)
ASP.NET
ColdFusion
JavaServerPages (JSP)
85. Crear un formulario web.
El objeto form
El objeto form debe estar contenido entre las
etiquetas <form> y </form>En principio la sintaxis básica para
referirnos a un formulario sería:
<form name="nombre_formulario" action="" method="POST"
target="_blank">
.......campos....
</form>
De todas formas, iremos viendo la aplicación de este tipo de sintaxis
con los próximos ejemplos y a medida que avancemos.
86. propiedad
descripción
name
es el nombre único del formulario.
action
es el lugar al cual se envía el formulario para ser procesado. El action define la URL a la
cual se envía dicho formulario.
method
método de envío de los datos insertados en un formulario. El method puede ser:
GET = envía los datos en una cadena "visible". Conveniente para enviar pocos datos.
POST = envía los datos en forma "invisible". Conveniente para enviar una gran cantidad
de datos.
define la ventana o marco (frame) en la que se mostrarán o procesarán los resultados
target
del formulario.
El valor es el mismo que el utilizado en HTML (blank, self, top, nombre_marco, etc..)
87. Sintaxis básica
<form name="nombre_formulario" action="procesar.php" method="POST"
target="_blank">
.......campos....
</form>
Métodos del objeto form
El objeto form posee dos métodos:
método
descripción
submit
envía el formulario.
reset
restablece el formulario a los valores por defecto.
Sintaxisbásica
<form name="nombre_formulario" action="procesar.php" method="POST"
target="_blank">
.......campos....
<input type="submit" value="enviarformulario">
<input type="reset" value="borrar">
</form>
88. Uso de Formularios
• Otra de las características más importantes de PHP es
que gestiona formularios HTML. El conceptobásicoque
es importante entender es que cualquier elemento de
los formularios estará disponible automáticamente en
su código PHP. Ejemplos sobre cómo usar formularios
HTML con PHP. Observemos un ejemplo:
Ejemplo Un formulario HTML simple
<formaction="accion.php" method="post">
<p>Su nombre: <input type="text" name="nombre" /></p>
<p>Su edad: <input type="text" name="edad" /></p>
<p><input type="submit" /></p></form>
89. No hay nada especial en este formulario, es solamente HTML
sin ninguna clase de etiquetas especiales de ningún tipo.
Cuando el usuario rellena éste formulario y oprime el botón
Submit, una página titulada accion.phpes llamada. En
estearchivoencontraráalgoasí:
Ejemplo Imprimir información desde nuestro formulario
Hola<?phpecho “$_POST['nombre'])”;?>.
Usted tiene <?phpecho “$_POST['edad']”;?>años de edad.
Un ejemplo del resultado de esta secuencia de comandos
puede ser:
Hola José. Usted tiene 22 años de edad.
90. Controles básicos
Etiqueta <INPUT>
<input>
La etiqueta<input>es la que controla la mayoría de los
posibles controles de un formulario en Html. El tipo de
control lo indicaremos mediante el atributo type.
Esta etiqueta no lleva etiqueta de cierre. Veamos cómo se
usa y sus atributos:
91.
92. El resto de atributos dependen del tipo de
control por lo que los estudiaremos por
separado para los distintos tipos:
93.
94.
95.
96.
97. Menús desplegables
<select>,<option>y<optgroup>
Otro tipo de controles son los menúes desplegables. Estos
permiten seleccionar una o varias opciones de una lista.
Un menú desplegable se crea con la etiqueta<select>y dentro
de ella crearemos cada elemento de la lista con<option>. La
tercera etiqueta,<optgroup>, sirve para agrupar los
elementos de la lista cuando es necesario.
Veamos cómo se utilizan estas etiquetas:
98.
99.
100. Desarrollo de aplicaciones web
Aplicación de controles
HTML
WEB
De Validación
Del Usuario
2.2 Gestión del estado
101. Procesamiento de cadenas
El lenguaje PHP ofrece una serie de
herramientas para el procesamiento de
cadenas, que es muy utilizado en mostrar
datos con un cierto formato o en almacenar
en una base de datos información de una
manera determinada. A continuación se
detallan algunas funciones para el manejo de
cadenas:
102. Funciones echo y print()
Estas dos instrucciones se utilizan para mostrar una o varias cadenas
en la pantalla. Generalmente se ha venido utilizando la instrucción
echo en los ejemplos realizados, pero también es posible utilizar la
función print(), con la diferencia de que en esta función, la cadena a
imprimir debe estar entre paréntesis, cosa que con la instrucción
echo, no es necesario.
Ejemplo:
echo $Nombre;
print ($Domicilio);
Funcion: printf()
Esta función es similar a la función print(), pero permite dar un cierto
formato a lo que se desea imprimir. La Sintaxis de esta función es:
printf("Formato", $cadena);
Formato debe ser una letra permitida.
$cadena es la variable a imprimir.
103. • Los tipos de formatos permitidos, son los
siguientes:
Letra de Formato
Especificación de lo que realiza
B
Expresa a la variable como número binario
C
Expresa a la variable como carácter ASCII
d
Expresa a la variable como número decimal
f
Expresa a la variable como número de punto flotante
o
Expresa a la variable como número octal
s
Expresa a la variable como un string (cadena)
x
Expresa a la variable como número hexadecimal en
minúsculas
X
Expresa a la variable como número hexadecimal en
Mayúsculas
104. Para establecer que la letra es un formato de impresión, se
debe colocar delante de ella el signo de porcentaje (%).
Ejemplo 1:
Este ejemplo almacena el valor del sueldo en la variable
$Sueldo, y luego lo muestra de diferente forma:
<Html>
<Title> Ejemplo1-Printf.php </Title>
<Body>
<?Php
$Sueldo = 2947.3262;
printf($Sueldo . "<Br>");
printf("%f", $Sueldo); printf("<Br>");
printf("$ %7.2f",$Sueldo); printf("<Br>");
?>
</Body>
</Html>
105.
106. •
•
•
Ejemplo 2:
Asignar a una variable, una determinada cadena y posteriormente mostrarla en todos los formatos descriptos.
<Html>
<Title> Ejemplo2-Formatos.php </Title>
<Body>
<?Php
$cadena = "76.9 minutos";
printf("Resultado en formato binario: ");
printf("%b", $cadena);
printf("<Br>");
printf("Resultado según la tabla ASCII: ");
printf("%c", $cadena);
printf("<Br>");
printf("Resultado en formato decimal: ");
printf("%d", $cadena);
printf("<Br>");
printf("Resultado en formato float: ");
printf("%f", $cadena);
printf("<Br>");
printf("Resultado en formato octal: ");
printf("%o", $cadena);
printf("<Br>");
printf("Resultado en formato string: ");
printf("%s", $cadena);
printf("<Br>");
printf("Resultado en formato hexadecimal (minúscula): ");
printf("%x", $cadena);
printf("<Br>");
printf("Resultado en formato hexadecimal (mayúscula): ");
printf("%X", $cadena);
?>
</Body>
</Html>
107.
108. Funcion: sprintf()
Es similar a la función printf, con la diferencia de
que no imprime el resultado en el
navegador, sino que se utiliza para almacenar una
cadena en una variable.
La sintaxis es la siguiente:
variable = sprintf ("Formato", cadena);
En este caso, sprintf, devuelve en la variable el
valor de la cadena transformado de acuerdo
al Formatoindicado. El Formato puede ser
cualquier letra de las descriptas para la función
printf.
109. Ejemplo 3
IDEM al ejemplo 2 utilizando sprintf.
<Html>
<Title> Ejemplo3-Sprintf.php </Title>
<Body>
<?Php
$cadena = "76.9 minutos";
// Transformacion a binario
$variable = sprintf("%b<Br>",$cadena);
// Transformación a caracteres
$variable .= sprintf("%c<Br>", $cadena);
// Transformación a decimal
$variable .= sprintf("%d<Br>", $cadena);
// Transformación a float
$variable .= sprintf("%f<Br>", $cadena);
// Transformación a octal: ");
$variable .= sprintf("%o<Br>", $cadena);
// Transformación a string
$variable .= sprintf("%s<Br>", $cadena);
// Transformación a hexadecimal (minúscula)
$variable .= sprintf("%x<Br>", $cadena);
// Transformación a hexadecimal (mayúscula)
$variable .= sprintf("%X<Br>", $cadena);
echo $variable;
?>
</Body>
</Html>
110. Funcion: strtoupper()
Esta función permite transformar una cadena a mayúsculas.
Ejemplo 4:
Almacenar una frase en una variable y posteriormente mostrarla en
mayúsculas.
<Html>
<Title> Ejemplo4-StrToUpper.php </Title>
<Body>
<?Php
$frase = "Hoy es un día soleado.";
echo "<H3>";
echo "Frase ingresada: " . $frase;
echo "<Br><Br>";
echo "Frase en Mayúsculas: " .strtoupper($frase);
?>
</Body>
</Html>
111. Funcion: strtolower()
Es la inversa de la función anterior, es decir que transforma una cadena en minúsculas.
Ejemplo 5:
Almacenar una frase en una variable y posteriormente mostrarla en minúsculas.
<Html>
<Title> Ejejemplo5-StroLower.php </Title>
<Body>
<?Php
$frase = "ESTE APUNTE ES DE PHP";
echo "<H3>";
echo "Frase ingresada: " . $frase;
echo "<Br><Br>";
echo "Frase en Minúsculas: " .strtolower($frase);
?>
</Body>
</Html>
112. Funcion: ucwords()
Convierte el primer carácter de cada palabra en mayúsculas.
Ejemplo 6:
Inicializar una variable con el nombre y apellido de una persona y posteriormente
mostrarla con sus primeros caracteres en mayúsculas.
<Html>
<Title> Ejemplo6-UcWords.php </Title>
<Body>
<?Php
$nombre = "marcelorodriguez";
echo "<H3>";
echo "Cadena original: " . $nombre;
echo "<Br><Br>";
echo "Cadena convertida: " .ucwords($nombre);
?>
</Body>
</Htm>
113. Funcion: trim()
Mediante esta función, se eliminan los espacios en blanco al inicio y al final de una
cadena.. También elimina los caracteres de control: “n”, “r”, “t” y “0”.
Ejemplo 7:
<Html>
<Title> Ejemplo7-Trim.php </Title>
<Body>
<?Php
$profesion = "nrtTécnico Constructor nn";
echo "<H3>";
echo "Cadena original: " . $profesion;
echo "<Br><Br>";
echo "Cadena convertida: " .trim($profesion);
?>
</Body>
</Html>
Al ejecutar este ejemplo, no se observarán diferencias al visualizarlo en el navegador,
pero si se observarán diferencias si se visualiza el código generado por el
programa.
114. Funciones: ltrim() y chop()
Funcionan de forma similar a trim(), con la
diferencia de que ltrim(), elimina espacios en
blanco al principio de la cadena, mientras
que chop(), elimina espacios en blanco al final
de la cadena.
115. Funcion: strlen()
Esta función permite obtener la longitud de una cadena de caracteres pasada como
parámetro.
Ejemplo 8:
Almacenar en una variable una cadena de caracteres y luego mostrar la cantidad de
caracteres que la constituyen.
<Html>
<Title> Ejemplo8-Strlen.php </Title>
<Body>
<?Php
$cadena = "PHP es un lenguaje de programación.";
echo "<H3>";
echo "Cadena : " . $cadena;
echo "<Br><Br>";
echo "Cantidad de caracteres: " .strlen($cadena);
?>
</Body>
</Html>
116. Funcion: chr()
•
•
•
La función chr() recibe un valor numérico y devuelve el carácter de la tabla ASCII que le corresponde
Ejemplo 9:
Imprimir la tabla ASCII desde el código 30 en adelante.
•
<Html>
<Title> Ejemplo9-Chr.php </Title>
<Body>
<?Php
echo "<H3>";
echo "<Table border=2 align=Center width=100%>";
$c=30;
for ($i=1; $i<24; $i++)
{
echo "<tr>";
for ($j=1; $j<=10; $j++)
{
echo "<th align=Center>" . $c . "</th>";
echo "<td align=Center>". chr($c) . "</td>";
$c++;
}
echo "</tr>";
}
echo "</Table>" ;
?>
</Body>
</Html>
117. Funcion: ord()
Es la función inversa a la chr(), es decir que dado un carácter como
parámetro, la función ord(), devuelve el valor del código que le
corresponde.
Ejemplo 10:
Asignar a una variable un carácter y posteriormente mostrar el código que le
corresponde:
<Html>
<Title> Ejemplo10-Ord.php </Title>
<Body>
<?Php
echo "<H3>";
$c = "L";
echo "El caracter: $c tiene como código: " .ord($c);
?>
</Body>
</Html>
118. Funcion: number_format()
La función number_format permite dar un formato deseado a un valor numérico determinado. La
sintaxis es la siguiente:
number_format(variable Numerica,
Cantidad De Decimales,
“Separador de decimales”,
“Separador de Miles”) ;
Ejemplo 11:
Dado un cierto valor numérico, imprimirlo con dos decimales separados por una coma, mostrando
también los miles separados por puntos.
<Html>
<Title> Ejercicio11-NumberFormat.php </Title>
<Body>
<?Php
echo "<H3>";
$valor = 8546921546.4875;
echo "El valor corresponde a: ";
echo number_format($valor,2,",",".");
?>
</Body>
</Html>
119. Funcion: substr()
•
•
•
•
•
Permite extraer una porción de texto de la cadena pasada como parámetro. Su sintaxis es la siguiente:
substr(cadenaOriginal, lugarInicial, cantidadDeCaracteres)
cadenaOriginal: Es la cadena de donde se extraerá el texto.
lugarInicial: Representa la posición desde donde se comenzarán a extraer el texto.
CantidadDeCaracteres: Indica cuantos caracteres se extraerán. (Opcional).
Ejemplo 12:
<Html>
<Title> Ejemplo12-Subsrt.php </Title>
<Body>
<?Php
echo "<H3>";
$cadena = "Alicia Martinez";
echo "Cadena Original: " . $cadena;
echo "<Br>";
echo "Tres primeros caracteres: ";
echo substr($cadena,0,3);
echo "<Br>";
echo "Seis caracteres a partir del octavo: ";
echo substr($cadena,7,6);
echo "<Br>";
echo "Cuatros caracteres comenzando desde el último: ";
echo substr($cadena,-4);
?>
</Body>
</Html>
120. Funcion: ereg()
Permite buscar una cadena dentro de otra cadena, devolviendo un valor verdadero si encontró coincidencia, de lo
contrario, devuelve falso.
Ejemplo 13:
<Html>
<Title> Ejemplo13-Erg.php </Title>
<Body>
<?Php
echo "<H3>";
$cadena = "Carlos Javier Robles";
echo "Cadena Original: " . $cadena;
echo "<Br>";
$clave = "Javier";
echo "<Br>";
if (ereg($clave, $cadena))
{
echo "La palabra $clave existe en $cadena";
}
else
{
echo "La palabra $clave No existe es $cadena";
}
?>
</Body>
</Html>
121. Funcion: eregi()
Es similar a la función anterior, con la diferencia de que eregi() ignora las mayúsculas y minúsculas.
Funcion: ereg_replace()
Esta función ereg_replace permite buscar una cadena dentro de otra y reemplazar la cadena encontrada con una cadena definida.
La sintaxis es la siguiente:
nuevaCadena = ereg_replace(claveBuscada,
nuevoDato,
cadenaOriginal);
Ejemplo 14:
En el ejemplo anterior, buscar y reemplazar el nombre Javier por Martín.
<Html>
<Title> Ejemplo14-EregReplace.php </Title>
<Body>
<?Php
echo "<H3>";
$cadena = "Carlos Javier Robles";
echo "Cadena Original: " . $cadena;
echo "<Br>";
$clave = "Javier";
$nuevoNombre = "Martín";
$nuevaCadena = ereg_replace($clave, $nuevoNombre, $cadena);
echo "<Br>";
echo "Nuevo Nombre: " . $nuevaCadena ;
?>
</Body>
</Html>
122. Funcion: eregi_replace()
Es similar a la función anterior, con la diferencia de que eregi_replace() no tiene en cuenta las mayúsculas y minúsculas.
Funcion: split()
Permite separar una cadena de caracteres, pasándole como parámetro el carácter que actuará como separador. La cadena separada es almacenada en un arreglo. La sintaxis es la siguiente:
vector = split(caracter, cadena, cantidadDeElementos)
carácter: Es el carácter que actuará como separador.
cadena: Es la cadena original.
cantidadDeElementos: Es opcional, y determina cuantos elemento contendrá el vector generado. En caso de no indicarse, ajusta la cantidad automáticamente.
Ejemplo 15:
Dada una cadena de caracteres, generar un arreglo (vector) que contenga como elementos a cada una de las palabras de la cadena.
<Html>
<Title> Ejemplo15-Split.php </Title>
<Body>
<?Php
echo "<H3>";
$cadena = "El invierno es muy frío";
echo "Cadena Original: " . $cadena;
echo "<Br><Br>";
$separador = " ";
$v = split($separador, $cadena);
$cantidad = count($v);
for ($i=0; $i<$cantidad; $i++)
{
echo "Elemento [$i]: $v[$i] <Br>";
}
?>
</Body>
</Html>
Ejemplo 16:
Idem al anterior, pero guardando únicamente tres elementos en el vector.
<Html>
<Title> Ejemplo16-Split.php </Title>
<Body>
<?Php
echo "<H3>";
$cadena = "El invierno es muy frío";
echo "Cadena Original: " . $cadena;
echo "<Br><Br>";
$separador = " ";
$v = split($separador, $cadena, 3);
$cantidad = count($v);
for ($i=0; $i<$cantidad; $i++)
{
echo "Elemento [$i]: $v[$i] <Br>";
}
?>
</Body>
</Html>
123. Funcion: ucfirst()
Permite pasar a mayúscula el primer carácter de una cadena. La
función ucfirst() es útil cuando se desea imprimir nombres propios.
Ejemplo 17:
<Title> Ejemplo17-Ucfirst.php </Title>
<Body>
<?Php
echo "<H3>";
$cadena = "alejandra";
echo "Cadena Original: " . $cadena;
echo "<Br><Br>";
echo "Cadena procesada: " .ucfirst($cadena);
echo "<Br><Br>";
?>
</Body>
</Html>
124. Funcion: ucwords()
Permite cambiar a mayúsculas el primer carácter de todas las palabras de una
cadena.
Ejemplo 18:
<Title> Ejemplo18-Ucwords.php </Title>
<Body>
<?Php
echo "<H3>";
$cadena = "javier es buen alumno";
echo "Cadena Original: " . $cadena;
echo "<Br><Br>";
echo "Cadena procesada: " .ucwords($cadena);
echo "<Br><Br>";
?>
</Body>
</Html>
125. Funcion: strcmp()
Compara dos string (cadenas).
Ejemplo: strcmp(<string1>,<string2>)
Retorna cero si las dos cadenas son exactamente iguales.
Retorna mayor a cero si <string1> es mayor alfabéticamente.
Retorna menor a cero en caso contrario
$cadena1="lorena";
$cadena2="analia";
if (strcmp($cadena1,$cadena2)>0)
{
echo $cadena1." es mayor alfabéticamente que ".$cadena2;
}
De todos modos para comparar si dos string son iguales está permitido utilizar el operador ==
if ($cadena1=="lorena")
{
echo 'La variable $cadena1 almacena la cadena lorena';
}
Se imprime: La variable $cadena1 almacena la cadena lorena (Recordar que si utilizamos las comillas simples, las
variables no se sustituyen por el contenido de las mismas)
La función strcmp es sensible a mayúsculas y minúsculas, si queremos ver si dos cadenas son iguales insensible a
mayúsculas y minúsculas debemos emplear la función strcasecmp.
126. Funcion: strpos()
•
•
•
•
•
•
•
Esta función devuelve la posición que se encuentra en una cadena fuente una cadena clave. La sintaxis es la siguiente:
$Pos = strpos(cadenaFuente, cadenaClave, comienzo);
cadenaFuente: Es la cadena que será recorrida.
cadenaClave: Es la cadena buscada.
comienzo: Es opcional, y determina de que posición comenzará a explorar. Si se ignora, comienza desde el principio, posición cero.
Ejemplo 19:
Almacenar en una cadena, una frase y luego una palabra clave a buscar su posición. Imprimir la posición que le corresponde.
<Html>
<Title> Ejemplo19-Strpos.php </Title>
<Body>
<?Php
echo "<H3>";
$cadena = "En un ecosistema conviven diversos tipos de organismos";
$clave = "eco";
echo "Cadena Original: " . $cadena;
echo "<Br><Br>";
echo "Clave buscada: " . $clave;
echo "<Br><Br>";
$p = strpos($cadena, $clave);
if ($p!="")
{
echo "La clave se encuentra en la posición: $p" ;
}
else
{
echo "No existe la clave en la cadena fuente";
}
?>
</Body>
</Html>
127. VARIABLES EN PHP
• Las variables en PHP son representadas con un signo de dólar ($) seguido
por el nombre de la variable. El nombre de la variable es sensible a
minúsculas y mayúsculas. Es decir, las siguientes declaraciones de
variables son distintas entre ellas:
• $variable, $Variable, $variAble, $VariAble, etc. representan a distintas
variables.
• Recordar que una variable es un espacio de la memoria del ordenador (en
este caso del servidor) a la que asignamos un contenido que a grandes
rasgos puede ser un valor numérico (sólo números, con su valor de
cálculo) o alfanumérico (sólo texto o texto con números).
•
• Para declarar un nombre de variable válido, éste tiene que empezar con
una letra (o si no empieza con una letra, tendrá que hacerlo con un
carácter de subrayado), seguido de cualquier número de letras, números y
caracteres de subrayado. Veamos algunos ejemplos:
128. Posible nombre de variable
Validez
$4variable
Nombre de variable inválido.
$_4variable
Nombre de variable válido.
$variable4
Nombre de variable válido.
$otra
Nombre de variable válido.
$1_otra
Nombre de variable inválido.
$variable_de_nombre_muy_largo
Nombre de variable válido.
$ABC
Nombre de variable válido.
$AB C
Nombre de variable inválido.
$A_y_B_x_C
Nombre de variable válido.
129. Cuando el intérprete PHP detecta un error en la sintaxis al declarar una
variable, cuando tratamos de accecer a la página php nos aparecerá
un mensaje de error. Por ejemplo si en un archivo php incluimos
una línea como $ A B C = 5; donde el nombre de variable es inválido
ya que tiene espacios intermedios, nos aparecerá un mensaje de
error:
Parse error: syntax error, unexpected T_STRING, expecting T_VARIABLE
or '$' in
/home/miraiz/domains/midominio.com/public_html/prueba.php
on line 3. Este mensaje nos informa de que hay un problema en el
archivo php y nos indica la línea donde el intérprete considera que
está el problema.
130. DIFERENCIAS ENTRE LOS OPERADORES DE
ASIGNACIÓN E IGUALDAD
•
• Asignación (=)
•
• El operador de asignación es "=". Se podría pensar que
es como un "igual a". No lo es. El operador igual en
programación no tiene el mismo sentido que en
matemáticas. En programación, significa que el valor
de la expresión de la derecha se establece en el
operando de la izquierda.
•
• Veamos un ejemplo donde todo quedará mucho más
claro.
131. <?php
$a = 3; // asignamos el valor 3 a la variable $a
$b = "cadena"; // asignamos el valor "cadena" a la variable $b
?>
132. Igualdad (==)
El comparador de igualdad es ==. Como su
propio nombre indica, sirve para comparar
dos valores o variables y no para asignar
valores. Este operador devuelve el resultado
de la operación lógica de 'igual a tal y como
podemos apreciar en el siguiente ejemplo.
133. <?php
$a = 3;
$b = 3;
$a == $b; // El resultado de la comparación es TRUE porque $a es igual a $b
$a = 3;
$b = 4;
$a == $b; // El resultado de la comparación es FALSE porque $a no es igual a $b
?>
134. TIPOS DE DATOS
En PHP no es necesario indicar el tipo de datos
al que pertenece una variable, sino que son
asumidos directamente por el intérprete
PHP, que es el encargado de interpretar el
código.
Ahora veremos en una tabla los distintos tipos
de datos que se pueden usar en PHP.
135. TIPO DE DATO
DEFINICIÓN
Los integers, o enteros, pueden tener distintos valores
numéricos enteros que se expresan con diferentes notaciones.
$variable = 18; // Número entero positivo
integer
$variable = -18; // Número entero negativo
$variable = 0x12; // Notación hexadecimal, es igual a 18
decimales
float o double
Este tipo de datos son los números de punto flotante a los que
normalmente llamamos “números decimales”, por ejemplo,
9.876. La sintaxis para utilizarlos es bastante simple:
$variable = 9.876;
string
El tipo de datos string, también conocido como cadena de
caracteres, se expresa con la siguiente sintaxis:
$variable = "Yo soy una cadena";
Se trata de un tipo lógico. Sus posibles valores son TRUE o
FALSE.
boolean
$variable = true;
$variable = false;
136. INSTRUCCIÓN ECHO
Esta instrucción PHP hace que se muestre por
pantalla un texto, una variable, o una
combinación de texto y variables. Crea un
archivo php con el siguiente código, ponle un
nombre como usoDeEcho.php y súbelo al
servidor.
138. •
Se define a un arreglo como un grupo de elementos relacionados entre sí por medio de índices. Los arreglos pueden ser de una o más dimensiones,
los de una dimensión, son llamados comúnmente"vectores".
•
•
•
•
•
•
•
•
•
•
A diferencia con el lenguaje C, en PHP, un vector puede tener elementos de distintos tipos.
Para hacer referencia a un elemento del vector, se utiliza un índice, que indica la dirección en donde se encuentra un determinado valor. El índice en
un arreglo comienza siempre por cero. (Mas adelante se verá que el índice de un vector, no necesariamente debe ser un número entero, sino que
también puede ser un texto).
EjemploPráctico1:
Almacenar los nombres de los días de la semana en un vector y luego imprimirlos uno debajo de otro.
<Html>
<Title> Ejmeplo1 </Title>
<Body>
<?PHP
// Inicializacion del Vector
$dia[0] = "Domingo";
$dia[1] = "Lunes";
$dia[2] = "Martes";
$dia[3] = "Miércoles";
$dia[4] = "Jueves";
$dia[5] = "Viernes";
$dia[6] = "Sábado";
// Impresion del vector
for($i=0; $i<7; $i++)
{
echo ($dia[$i] . "<Br>") ;
}
?>
</Body>
</Html>
Comentario:
Se inicializa el vector indicando el número que le corresponde a cada posición entre corchetes [ ] y asignando el valor que se desea almacenar en
dicha posición.
Un vector, en PHP, puede contener elementos de distintos tipos de datos, es decir, un elemento puede ser un número entero, otro una cadena, otro
un número con decimales, etc.Un modelo de este caso se puede observar en el siguiente ejemplo.
139. Ejemplo Práctico 2:
Almacenar en un vector los datos personales de un empleado y luego mostrarlos en pantalla.
<Html>
<Title> Ejemplo 2 </Title>
<Body>
<?PHP
// Inicializacion del Vector
$Empleado[0] = 4371;
$Empleado[1] = "Martinez Leandro";
$Empleado[2] = "27.643.742";
$Empleado[3] = 1429.54;
$Empleado[4] = "Arquitecto";
// Impresion del vector
echo ("Legajo: " . $Empleado[0] . "<Br>");
echo ("Nombre: " . $Empleado[1] . "<Br>");
echo ("DNI : " . $Empleado[2] . "<Br>");
echo ("Sueldo: " . $Empleado[3] . "<Br>");
echo ("Profesion: " . $Empleado[4] . "<Br>");
?>
</Body>
</Html>
Existen varias maneras de inicializar vectores en PHP. A continuación se describen algunos ejemplos.
Pais[] = "Argentina";
Pais[] = "Uruguay";
Pais[] = "Brasil";
Pais[] = "Chile";
En este caso se observa que no es necesario colocar el número de índice, ya que PHP lo asigna automáticamente para cada valor, comenzando siempre desde cero. Otra forma de inicializar un
vector, es a través del constructor array, como se muestra en el siguiente ejemplo:
Pais =array("Argentina","Uruguay","Brasil","Chile");
También se puede definir un arreglo asociando explícitamente el índice a un valor, como se indica a continuación:
$Frutas = array(0 => "Manzana",
1 => "Naranja",
2 => "Pera",
3 => "Ananá");
Además, los índices, pueden no ser obligatoriamente consecutivos, ni tampoco comenzar de cero, ni tampoco ser un número. (Ver ejemplos más adelante).Se puede conocer la cantidad de
elementos que tiene un vector, para ello se utiliza la funcióncount(vector). Esta función acepta como parámetro el nombre del vector y devuelve la cantidad de elementos del mismo.
140. Ejemplo Práctico 3:
Cargar en un vector artículos de librería y luego imprimir la cantidad de ellos.
<Html>
<Title> Ejemplo 3 </Title>
<Body>
<?PHP
// Inicializacion del Vector
$Articulos =array("Lápis","Goma","Hoja","Tinta");
// Impresion del vector
$Cantidad = count($Articulos);
echo ("La cantidad de Artículos son: " . $Cantidad);
?>
</Body>
</Html>
Un vector en PHP puede tener elementos en cualquier posición, por lo tanto, se puede cargar un vector
con posiciones no consecutivas, sino en forma totalmente aleatoria. Para poder recorrer este tipo
de vectores se utilizan las funciones next() y prev().
141. Ejemplo Práctico 4:
Cargar los nombres de personas en cualquier posición.
<Html>
<Title> Ejemplo 4 </Title>
<Body>
<?PHP
// Inicializacion del Vector
$Nombre[10] = "Marcelo";
$Nombre[20] = "Alicia";
$Nombre[15] = "Alejandra";
$Nombre[35] = "Mario";
$Nombre[12] = "Alberto";
// Impresion del vector
reset($Nombre);
echo ("<H2>" . "Vector de Nombres");
echo ("<H3>" . "<Hr>");
do
{
// Buscar Posicion especificada
$i = key($Nombre);
// Buscar Contenido en esa posicion
$Valor = current($Nombre);
echo ("Posición: " . $i . " - ");
echo ("Contenido: " . $Valor);
echo ("<Br>");
}
while (next($Nombre));
?>
</Body>
</Html>
Comentario:
Aquí se observa que los nombres fueron cargados en posiciones aleatorias. Con la funciónreset(), se logra llevar el puntero al principio del vector y para poder encontrar la posición de un
elemento se utiliza la función key(), la cual acepta como parámetro el vector y devuelve la posición. Luego para poder obtener el contenido en esa posición se utiliza la
función current(), que acepta el vector y devuelve el valor almacenado. La función next() avanza el puntero a la posición siguiente, si se ha llegado al final del vector, esta función
devuelve false.
En caso de querer imprimir los datos del vector en forma invertida, solamente se debe cambiar la instrucción reset($Nombre) por: end($Nombre) y la instucción: while (next($Nombre)) por
: while (prev($Nombre)).
Como se dijo anteriormente, las funciones next() y prev() devuelven false al llegar al final y principio del vector respectivamente, pero tambien devuelven false cuando el valor de un elemento es
cero.
La función end() lleva el puntero al final del vector y con la función prev(), se retrocede el puntero hasta el anterior. Cuando se llegó al principio del vector, la función prev() devuelve false y sale
del ciclo.
Otra forma de recorrer un vector de estas característica es utilizando las funciones list() y each(), de la siguiente manera:
142. Ejemplo Práctico 5:
•
•
•
•
•
•
•
•
•
Cargar Legajos de personas con sus respectivos Nombres
<Html>
<Title> Ejemplo5.php </Title>
<Body>
<?Php
// Inicializacion del Vector
$Nombre[100] = "Javier";
$Nombre[200] = "Cintia";
$Nombre[150] = "Ricardo";
$Nombre[350] = "Raúl";
$Nombre[120] = "Guillermo";
// Impresion del vector
reset($Nombre);
echo "<H2>"."Vector de Nombres";
echo "<H3>"."<Hr>";
while (list($i,$Valor)=each($Nombre))
{
echo "Legajo: " . $i ." - ";
echo "Nombre: " . $Valor;
echo "<Br>";
}
?>
</Body>
</Html>
La función list(), almacena en los parámetros ($i, $Valor), el índice y el valor devuelto por la función each(), que tiene como parámetro el vector
puesto en juego. Además, la función list(), avanza automáticamente el puntero al siguiente elemento del vector, y en caso de que el vector haya
llegado al final, la función devuelve false.
Vectores con índice de Texto
Un vector en PHP, no solamente debe contener índice numérico, sino también, puede ser una letra o un texto.
143. • Ejemplo Práctico 6:
• Cargar en un vector algunas ciudades del
mundo, de manera que el índice del vector
contenga los tres primeros caracteres de la
ciudad almacenada.
145. •Las variables a nivel de sesión.
•Guardar información en el equipo cliente: cookies.
•La QueryString
•2.3 Acceso a datos
•2.3.1 Introducción al acceso a datos
•El acceso a datos desde sitios web.
•Conectar con Microsoft SQL.
•Conectar con Microsoft Access.
•Mostrar información de una base de datos en un formulario web.
•2.3.2 Manejo de datos
•Conectar a una base de datos
•Mostrar datos en un formulario
•Crear formularios de entrada
•Cadenas de conexión
•Actualizar datos mediante controles
•2.3.3 XML
•¿Qué es XML?
•Accesar datos en XML
•3. Tópicos avanzados
•3.1 Master Pages.
•3.2 Seguridad
•Principios básicos.
•El acceso anónimo.
•Autentificación
•La creación de usuarios y roles.
•Las normas de acceso.
•Controles web para la autentificación.
146. •3.3 Web Parts.
•Introducción a las ASP.NET Web Part.
•Crear una página con Web Parts.
•Cambiar la apariencia y la disposición en tiempo de ejecución.
•Agregar Web Parts en tiempo de ejecución.
•3.4 Manejo de imágenes.
•El control FileUpload