Nota:

la interfaz de usuario se ha simplificado en Dreamweaver CC y versiones posteriores. Como resultado, es posible que no encuentre algunas de las opciones que se describen en este artículo en Dreamweaver CC y versiones posteriores. Para obtener más información, consulte este artículo.

Acerca de las fuentes de contenido dinámico

Una fuente de contenido dinámico es un almacén de información desde el que se puede recuperar y mostrar contenido dinámico para utilizar en una página Web. Las fuentes de contenido dinámico no sólo incluyen información almacenada en una base de datos, sino también valores enviados por formularios HTML, valores contenidos en objetos de servidor y otras fuentes de contenido.

Dreamweaver le permite conectarse fácilmente a una base de datos y crear un juego de registros del que extraer contenido dinámico. Un juego de registros es el resultado de una consulta de base de datos. Extrae la información especifica solicitada y permite mostrarla en una página especificada. Defina el juego de registros basándose en la información contenida en la base de datos y el contenido que desea mostrar.

Distintos proveedores de tecnología pueden emplear términos distintos para referirse a un juego de registros. En ASP y ColdFusion un juego de registros se define como una consulta. Si utiliza otras fuentes de datos, como entradas de usuario o variables de servidor, el nombre de la fuente de datos definido en Dreamweaver coincidirá con el nombre de la fuente de datos.

Los sitios web dinámicos necesitan una fuente de datos para recuperar y mostrar contenido dinámico. Dreamweaver permite utilizar bases de datos, variables de petición, variables de URL, variables de servidor, variables de formulario, procedimientos almacenados y otras fuentes de contenido dinámico. Dependiendo de la fuente de datos, podrá recuperar contenido nuevo para satisfacer una solicitud o modificar la página para atender las necesidades de los usuarios.

Las fuentes de contenido definidas en Dreamweaver se añadirán a la lista de fuentes de contenido en el panel Vinculaciones. Posteriormente, podrá insertar la fuente de contenido en la página seleccionada actualmente.

Juegos de registros

Las páginas Web no pueden acceder directamente a los datos almacenados en una base de datos. Lo que hacen es interactuar con un juego de registros. Un juego de registros es un subconjunto de la información (registros) extraído de la base de datos mediante una consulta de base de datos. Una consulta es una declaración de búsqueda diseñada para buscar y extraer información específica de una base de datos.

Si utiliza una base de datos como fuente de contenido para una página Web dinámica, deberá crear en primer lugar un juego de registros para almacenar los datos recuperados. Los juegos de registros actuarán como intermediarios entre la base de datos que almacena el contenido y el servidor de aplicaciones que genera la página. Los juegos de registros se almacenan temporalmente en la memoria del servidor de aplicaciones para acelerar la recuperación de datos. El servidor descarta el juego de registros cuando ya no se necesita.

Una consulta produce un juego de registros que incluye sólo determinadas columnas, sólo determinados registros o una combinación de ambos. Un juego de registros también puede incluir todos los registros y columnas de una tabla de la base de datos. No obstante, dado que las aplicaciones pocas veces requieren la utilización de todos los datos de una base de datos, procure hacer los conjuntos de registros tan pequeños como sea posible. Dado que el servidor Web guarda temporalmente el juego de registros en la memoria, el uso de un juego más pequeño consumirá menos memoria, lo que puede redundar en un mayor rendimiento del servidor.

Las consultas de base de datos se escriben en SQL (Lenguaje de consulta estructurado, Structured Query Language), un sencillo lenguaje que permite recuperar, añadir y eliminar datos de una base de datos. El generador de SQL que incluye Dreamweaver permite crear consultas sencillas sin necesidad de conocer este lenguaje. Sin embargo, si desea crear consultas SQL, un conocimiento básico de este lenguaje le permitirá crear consultas más avanzadas y contar con mayor flexibilidad al diseñar páginas dinámicas.

Antes de definir un juego de registros para utilizarlo con Dreamweaver, deberá crear una conexión con una base de datos y, si esta está vacía, introducir los datos. Si aún no ha definido una conexión de base de datos para el sitio, consulte la sección correspondiente a la tecnología de servidor con la que está trabajando en el capítulo que trata este tema y siga las instrucciones para crear una conexión a la base de datos.

Acerca de los parámetros de URL y de formulario

Los parámetros de URL almacenan la información recuperada que han introducido los usuarios. Para definir un parámetro de URL, cree un vínculo de hipertexto o formulario que utilice el método GET para enviar datos. La información se añadirá al URL de la página solicitada y se comunicará al servidor. Cuando se utilizan variables de URL, la cadena de consulta contiene uno o más pares de nombre-valor asociados con campos de formulario. Estos pares de nombre-valor se añaden al URL.

Los parámetros de formulario almacenan información recuperada que se incluye en la petición HTTP de una página Web. Si crea un formulario que utiliza el método POST, los datos enviados por el formulario se transferirán al servidor. Antes de comenzar deberá transferir un parámetro de formulario al servidor.

Variables de sesión

Las variables de sesión permiten almacenar y mostrar información mantenida durante la visita (o sesión) de un usuario. El servidor crea un objeto de sesión diferente para cada usuario y lo mantiene durante un período de tiempo establecido o hasta que se pone fin al objeto explícitamente.

Dado que las variables de sesión duran toda la sesión y se conservan cuando el usuario se desplaza de una página a otra dentro del sitio Web, resultan idóneas para almacenar las preferencias del usuario. Las variables de sesión se pueden utilizar para insertar un valor en el código HTML de la página, asignar un valor a una variable local o suministrar un valor para evaluar una expresión condicional.

Antes de definir las variables de sesión de una página deberá crearlas en el código fuente. Después de crear una variable de sesión en el código fuente de la aplicación web, puede usar Dreamweaver para recuperar su valor y usarlo en una página web.

Funcionamiento de las variables de sesión

Las variables de sesión almacenan información (generalmente parámetros de formulario o de URL enviados por los usuarios) y la ponen a disposición de todas las páginas de una aplicación Web mientras dura la visita del usuario. Por ejemplo, cuando los usuarios visitan un portal Web que proporciona acceso a correo electrónico, cotizaciones bursátiles, informes meteorológicos y noticias, la aplicación Web almacena la información de registro en una variable de sesión que identifica al usuario en todas las páginas del sitio. Esto permite al usuario ver únicamente los tipos de contenidos que ha seleccionado mientras navegaba por el sitio. Las variables de sesión también pueden proporcionar un mecanismo de seguridad al poner fin a la sesión del usuario si la cuenta permanece inactiva durante un determinado período de tiempo. De este modo también se libera memoria del servidor y recursos de procesamiento si los usuarios se olvidan de terminar la sesión de un sitio Web.

Las variables de sesión almacenan información mientras dura la sesión del usuario. La sesión comienza cuando el usuario abre una página de la aplicación y termina cuando el usuario no abre otra página de la aplicación durante un período de tiempo determinado o cuando el usuario pone fin de manera explícita a la sesión (generalmente haciendo clic en un vínculo de “desconexión”). Mientras dura, la sesión es específica de un usuario individual y cada usuario tiene una sesión independiente.

Utilice variables de sesión para almacenar información a la que pueda acceder cada página de una aplicación Web. La información puede ser muy diversa e incluir, por ejemplo, el nombre del usuario, el tamaño de fuente preferido o un indicador que especifique si el usuario ha iniciado sesión de forma correcta. Otra utilización común de las variables de sesión consiste en mantener en funcionamiento un registro que recopile información como el número de preguntas que el usuario respondió correctamente hasta un momento determinado en un cuestionario en línea o los productos que el usuario seleccionó de un catálogo en línea hasta ese momento.

Las variables de sesión sólo pueden funcionar si el navegador del usuario está configurado para aceptar cookies. El servidor crea un número de ID de sesión que identifica el usuario cuando se inicia la sesión y, a continuación, envía una cookie que contiene el número de ID al navegador del usuario. Cuando el usuario solicita otra página al servidor, éste lee la cookie en el navegador para identificar al usuario y recuperar las variables de sesión del usuario almacenadas en la memoria del servidor.

Recopilación, almacenamiento y recuperación de información en variables de sesión

Antes de crear una variable de sesión, deberá obtener en primer lugar la información que desea almacenar y, a continuación, enviarla al servidor para su almacenamiento. Puede recabar y enviar información al servidor utilizando formularios HTML o vínculos de hipertexto que contienen parámetros de URL. También puede obtener información a partir de cookies almacenadas en el equipo del usuario, en los encabezados HTTP enviados por el navegador del usuario con una solicitud de página o en una base de datos.

Un ejemplo típico de almacenamiento de parámetros de URL en las variables de sesión es un catálogo de productos que emplea parámetros de URL incorporados en el código creados mediante un vínculo para devolver información sobre productos al servidor que debe almacenarse en una variable de sesión. Cuando el usuario hace clic en el vínculo “Añadir al carro de la compra”, el ID de producto se almacena en una variable de sesión mientras el usuario sigue comprando. Cuando el usuario pasa a la página de caja, se recupera el ID de producto almacenado en la variable de sesión.

Una encuesta basada en formulario es un ejemplo típico de una página que guarda parámetros de formulario en variables de sesión. El formulario devuelve la información seleccionada al servidor, donde una página de aplicación puntúa la encuesta y guarda las respuestas en una variable de sesión que debe pasarse a una aplicación que pueda registrar las respuestas recopiladas de la muestra de encuestados. La información también puede guardarse en una base de datos para usarla más adelante.

Cuando la información se envía al servidor, se almacena en variables de sesión añadiendo el código correspondiente al modelo de servidor en la página especificada por el parámetro de URL o de formulario. Esta página, denominada página destination, se especifica en el atributo action del formulario HTML o el atributo href del vínculo de hipertexto en la página inicial.

Una vez almacenado un valor en una variable de sesión, puede utilizar Dreamweaver para recuperar el valor de las variables de sesión y utilizarlo en una aplicación web. Después de definir la variable de sesión en Dreamweaver, puede insertar su valor en una página.

La sintaxis HTML de cada uno será la siguiente:

<form action="destination.html" method="get" name="myform"> </form> 
<param name="href"value="destination.html">

El código empleado para almacenar la información en una variable de sesión viene determinado por la tecnología del servidor y por el método utilizado para obtener la información. La sintaxis básica de cada tecnología del servidor será la siguiente:

ColdFusion

<CFSET session.variable_name = value>

ASP

<% Session("variable_name") = value %>

La expresión value suele ser una expresión de servidor como Request.Form(“lastname”). Por ejemplo, si utiliza un parámetro de URL llamado product (o un formulario HTML con el método GET y un campo de texto llamado product) para recopilar información, las declaraciones siguientes almacenarán la información en una variable de sesión llamada prodID:

ColdFusion

<CFSET session.prodID = url.product>

ASP

<% Session("prodID") = Request.QueryString("product") %>

Si utiliza un formulario HTML con el método post y un campo de texto llamado txtProduct para recabar la información, las declaraciones siguientes almacenarán la información en la variable de sesión:

ColdFusion

<CFSET session.prodID = form.txtProduct>

ASP

<% Session("prodID") = Request.Form("txtProduct") %>

Ejemplo de información almacenada en variables de sesión

Suponga que está diseñando un sitio dedicado principalmente a la tercera edad. En Dreamweaver, añada dos vínculos a la página de bienvenida para que los usuarios personalicen el tamaño del texto del sitio. Para ver texto más grande y fácil de leer, el usuario hace clic en un vínculo y, para ver texto de tamaño normal, hace clic en otro.

Información almacenada en variables de sesión
Información almacenada en variables de sesión

Cada vínculo tiene un parámetro de URL llamado fontsize que envía la preferencia de texto del usuario al servidor, como muestra el siguiente ejemplo de Adobe ColdFusion®:

<a href="resort.cfm?fontsize=large">Larger Text</a><br> 
<a href="resort.cfm?fontsize=small">Normal Text</a>

Almacene la preferencia de texto del usuario en una variable de sesión y utilícela para establecer el tamaño de fuente de cada página que solicite el usuario.

Cerca de la parte superior de la página de destino, introduzca el código siguiente para crear una sesión llamada font_pref que almacene la preferencia de tamaño de fuente del usuario.

ColdFusion

<CFSET session.font_pref = url.fontsize>

ASP

<% Session("font_pref") = Request.QueryString("fontsize") %>

Cuando el usuario hace clic en el vínculo de hipertexto, la página envía la preferencia de texto del usuario en un parámetro de URL a la página de destino. El código de la página de destino almacena en el parámetro de URL en la variable de sesión font_pref. Mientras dure la sesión del usuario, todas las páginas de la aplicación recuperarán este valor y mostrarán el tamaño de fuente seleccionado.

Variables de aplicación de ASP y ColdFusion

En ASP y ColdFusion, puede utilizar variables de aplicación para almacenar y mostrar información que se mantiene mientras dure la aplicación y que se conserva de un usuario a otro. La aplicación dura desde el momento en que el primer usuario solicita una página en la aplicación hasta el momento en que el servidor Web se detiene. (Se denomina aplicación a todos los archivos de un directorio virtual y sus subdirectorios).

Dado que las variables de aplicación se mantienen mientras dure la aplicación y se conservan de un usuario a otro, resultan idóneas para almacenar información que debe existir para todos los usuarios, como, por ejemplo, la hora y la fecha actuales. El valor de la variable de aplicación se define en el código de la aplicación.

Variables de servidor ASP

Puede definir las siguientes variables de servidor ASP como fuentes de contenido dinámico: Request.Cookie, Request.QueryString, Request.Form, Request.ServerVariables, Request.ClientCertificates.

Variables de servidor ColdFusion

Puede definir las siguientes variables de servidor ColdFusion:

Variables de cliente

Asocian datos a un cliente específico. Las variables de cliente mantienen el estado de la aplicación mientras el usuario se desplaza de una página a otra de la aplicación, así como de una sesión a otra. “Mantener el estado” significa conservar la información de una página (o sesión) en la siguiente para que la aplicación recuerde al usuario y las opciones y preferencias anteriores del usuario.

Variables de cookie

Acceden a cookies transferidas al servidor por el navegador.

Variables CGI

Proporcionan información sobre el servidor que ejecuta ColdFusion, el navegador que solicita una página y otro tipo de información sobre el entorno de procesamiento.

Variables de servidor

Pueden acceder a ellas todos los clientes y las aplicaciones del servidor. Se mantienen hasta que se detiene el servidor.

Variables locales

Se crean con la etiqueta CFSET o CFPARAM en una página ColdFusion.

Esta obra está autorizada con arreglo a la licencia de Reconocimiento-NoComercial-CompartirIgual 3.0 Unported de Creative Commons.  Los términos de Creative Commons no cubren las publicaciones en Twitter™ y Facebook.

Avisos legales   |   Política de privacidad en línea