Remarque :

L’interface utilisateur a été simplifiée sous Dreamweaver CC et versions ultérieures. Par conséquent, il se peut que vous ne trouviez pas certaines options décrites dans cet article sous Dreamweaver CC et versions ultérieures. Pour plus d’informations, consultez cet article.

À propos des sources de contenu dynamique

Une source de contenu dynamique est un stock d’informations à partir duquel il est possible de récupérer du contenu dynamique en vue de l’afficher dans une page web. Différentes sources peuvent être utilisées comme sources de contenu dynamique : des informations enregistrées dans une base de données, mais aussi des valeurs envoyées au moyen d’un formulaire HTML, des valeurs contenues dans un objet de serveur, etc.

Dreamweaver vous permet aisément d’établir une connexion à une base de données et de créer un jeu d’enregistrements à partir duquel il sera possible d’extraire du contenu dynamique. Un jeu d’enregistrements correspond au résultat d’une requête de base de données. Il permet d’extraire les informations spécifiques demandées et de les afficher dans une page donnée. L’utilisateur définit le jeu d’enregistrements en fonction des informations présentes dans la base de données et du contenu qu’il souhaite afficher.

Certains fournisseurs de technologie utilisent une terminologie différente pour désigner un jeu d’enregistrements. Dans les technologies ASP et ColdFusion, un jeu d’enregistrements est défini comme requête. Si vous utilisez d’autres sources de données, telles que des entrées utilisateur ou des variables de serveur, le nom de la source de données qui est défini sous Dreamweaver est identique à celui de la source de données.

Les sites web dynamiques requièrent une source de données à partir de laquelle le contenu dynamique peut être récupéré et affiché. Dreamweaver permet d’utiliser des bases de données, des procédures stockées, des variables de demande, d’URL, de serveur et de formulaire, ainsi que d’autres sources de contenu dynamique. Suivant la source de données, il est possible soit de récupérer un nouveau contenu pour répondre à une demande, soit de modifier la page pour satisfaire aux besoins des utilisateurs.

Toute source de contenu définie sous Dreamweaver est ajoutée à la liste des sources de contenu du panneau Liaisons. Vous pouvez ensuite insérer la source de contenu dans la page actuellement sélectionnée.

À propos des jeux d’enregistrements

Les pages Web ne peuvent pas accéder directement aux données stockées dans une base de données. Au lieu de cela, elles interagissent avec un jeu d’enregistrements. Un jeu d’enregistrements correspond à un sous-ensemble d’informations (ou enregistrements) extraits de la base de données à l’aide d’une requête de base de données. Une requête est une instruction de recherche conçue pour trouver et extraire des informations précises stockées dans une base de données.

Si vous utilisez une base de données comme source de contenu d’une page web dynamique, vous devez tout d’abord créer un jeu d’enregistrements dans lequel seront stockées les données récupérées. Les jeux d’enregistrements servent d’intermédiaire entre la base de données dans laquelle le contenu est enregistré et le serveur d’application qui génère la page. Les jeux d’enregistrements sont stockés temporairement dans la mémoire du serveur d’application, afin d’accélérer la récupération de données. Le serveur supprime un jeu d’enregistrements lorsqu’il n’est plus nécessaire.

Une requête peut générer un jeu d’enregistrements n’incluant que certaines colonnes, certains enregistrements ou encore une combinaison des deux. Un jeu d’enregistrements peut également inclure tous les enregistrements et toutes les colonnes d’une table de base de données. Toutefois, comme les applications n’ont généralement pas besoin de toutes les informations stockées dans une base de données, il est fortement conseillé d’essayer de limiter au maximum la taille des jeux d’enregistrements. De plus, comme le serveur Web stocke temporairement en mémoire le jeu d’enregistrements, l’utilisation d’un jeu de taille limitée économise de la mémoire et peut de ce fait améliorer les performances du serveur.

Les requêtes de base de données sont écrites en SQL (Structured Query Language), langage simple permettant de récupérer des informations d’une base de données, mais aussi d’ajouter des données à une base et d’en supprimer. Le générateur SQL inclut sous Dreamweaver permet de créer des requêtes simples sans maîtriser le langage SQL. Toutefois, si vous voulez créer des requêtes SQL complexes, une connaissance de base de ce langage vous permet de créer des requêtes plus avancées et vous offre davantage de souplesse pour la conception de pages dynamiques.

Avant de définir un jeu d’enregistrements qui sera utilisé sous Dreamweaver, vous devez créer une connexion à une base de données et saisir des données dans la base si celle-ci n’en contient pas. Si vous n’avez pas encore défini de connexion à une base de données pour votre site, consultez le chapitre consacré spécifiquement à la mise en place d’une connexion à une base de données dans le contexte de la technologie de serveur que vous utilisez, et suivez les instructions fournies.

À propos des paramètres d’URL et de formulaire

Les paramètres d’URL permettent de stocker les informations saisies par les utilisateurs. Pour définir un paramètre d’URL, vous devez créer un formulaire ou un lien hypertexte utilisant la méthode GET pour l’envoi de données. Les informations sont annexées à l’URL de la page demandée et communiquées au serveur. Lorsque vous utilisez des variables d’URL, la chaîne de la requête contient une ou plusieurs paires nom-valeur associées aux champs du formulaire. Ces paires nom-valeur sont annexées à l’URL.

Les paramètres de formulaire permettent de stocker les informations récupérées dans la requête HTTP d’une page web. Si vous créez un formulaire utilisant la méthode POST, les données envoyées par le formulaire sont transmises au serveur. Avant de commencer, vérifiez que vous avez transmis un paramètre de formulaire au serveur.

À propos des variables de session

Les variables de session permettent de stocker et d’afficher des informations conservées pendant toute la durée de la visite (ou session) de l’utilisateur. Le serveur crée un objet de session différent pour chaque utilisateur et le conserve pendant une période définie ou jusqu’à ce qu’il soit explicitement clos.

Comme les variables de session sont conservées pendant toute la session de l’utilisateur, même lorsque celui-ci passe d’une page à l’autre dans le site web, elles conviennent parfaitement au stockage des préférences de l’utilisateur. Les variables de session peuvent également être utilisées pour insérer une valeur dans le code HTML de la page, attribuer une valeur à une variable locale ou fournir une valeur permettant d’évaluer une expression conditionnelle.

Avant de définir des variables de session pour une page, vous devez les créer dans le code source. Vous pouvez utiliser Dreamweaver pour récupérer sa valeur et l’utiliser dans une page web après avoir créé une variable de session dans le code source de l’application Web.

Fonctionnement des variables de session

Les variables de session stockent des informations (très souvent des paramètres de formulaire ou d’URL envoyés par les utilisateurs) et les rendent accessibles à toutes les pages de l’application pendant la durée de la visite d’un utilisateur. Ainsi, lorsqu’un utilisateur se connecte à un portail Web lui donnant accès à une messagerie, des cours boursiers, des bulletins météo et des dossiers d’actualité, l’application Web stocke les informations de connexion dans une variable de session qui identifie l’utilisateur dans toutes les pages du site. Cela permet à l’utilisateur de ne voir que le type de contenu qu’il a sélectionné pendant qu’il parcourt le site. Les variables de session peuvent également proposer un mécanisme de sécurité en mettant fin à la session d’un utilisateur si le compte reste inactif pendant un certain temps. Cette méthode présente aussi l’avantage de libérer les ressources de traitement et la mémoire du serveur lorsque les utilisateurs oublient de se déconnecter d’un site web.

Les variables de session stockent les informations pendant toute la durée de la session d’un utilisateur. La session commence lorsque l’utilisateur ouvre une page dans l’application et se termine lorsqu’il n’ouvre pas d’autre page dans l’application pendant un laps de temps donné ou lorsqu’il met explicitement fin à la session (en général, en cliquant sur un lien de déconnexion). Tant qu’elle existe, la session est spécifique à un utilisateur donné ; chaque utilisateur dispose donc d’une session qui lui est propre.

Faites appel aux variables de session pour stocker des informations auxquelles chaque page de l’application Web doit pouvoir accéder. Ces informations peuvent aller du nom de l’utilisateur à ses préférences pour la taille des polices à l’écran, en passant par un indicateur signalant la réussite ou l’échec de sa connexion. Les variables de session sont également souvent utilisées pour assurer le suivi d’un comptage cumulatif, tel que le nombre de questions auxquelles un utilisateur a répondu correctement jusqu’à présent dans un quiz en ligne ou les produits qu’il a sélectionnés dans un catalogue en ligne.

Les variables de session ne peuvent fonctionner que si le navigateur de l’utilisateur est configuré pour accepter les cookies. Le serveur crée un numéro d’ID de session qui permet l’identification univoque de l’utilisateur lors de l’initialisation de la première session, puis envoie au navigateur de l’utilisateur un cookie contenant ce numéro d’ID. Lorsque l’utilisateur demande une nouvelle page située sur le serveur, celui-ci lit le cookie dans le navigateur pour identifier l’utilisateur et récupérer ses variables de session personnelles, stockées en mémoire.

Collecte, stockage et récupération d’informations dans des variables de session

Avant de créer une variable de session, vous devez commencer par obtenir les informations à stocker, puis les envoyer au serveur pour stockage. Vous pouvez recueillir et envoyer des informations au serveur à l’aide de formulaires HTML ou de liens hypertexte contenant des paramètres d’URL. Vous pouvez également obtenir des informations à partir d’une base de données, des cookies stockés dans l’ordinateur d’un utilisateur ou des en-têtes HTTP envoyés par son navigateur avec une demande de page.

Un catalogue de produits utilisant des paramètres d’URL figés dans le code et créés à l’aide d’un lien pour renvoyer des informations sur les produits au serveur afin qu’elles soient stockées dans une variable de session est un exemple typique de stockage de paramètres d’URL dans les variables de session. Quand un utilisateur clique sur le lien « Add to shopping cart » (Ajouter au panier), l’ID du produit est stockée dans une variable de session pendant que l’utilisateur poursuit ses achats. Lorsqu’il passe à la page de paiement, l’ID du produit stockée dans la variable de session est récupérée.

Un sondage reposant sur un formulaire est un exemple typique de page stockant les paramètres de formulaire dans les variables de session. Le formulaire renvoie l’information sélectionnée au serveur, où une page d’application note le sondage et stocke les réponses dans une variable de session, afin, par exemple, de les transmettre à une application qui regroupe les réponses de toutes les personnes ayant répondu au sondage. Il est également possible que les informations soient stockées dans une base de données pour être utilisées ultérieurement.

Une fois que vous avez envoyé les informations au serveur, vous pouvez les stocker dans des variables de session en ajoutant à la page spécifiée par le paramètre de formulaire ou d’URL le code adapté à votre modèle de serveur. Appelée page de destination, cette page est spécifiée soit dans l’attribut action du formulaire HTML, soit dans l’attribut href du lien hypertexte situé dans la première page.

Vous pouvez utiliser Dreamweaver pour retirer une valeur depuis une variable de session et l’utiliser après avoir stocké une valeur dans celle-ci. Vous pouvez insérer la valeur d’une variable de session après l’avoir définie sous Dreamweaver.

La syntaxe HTML de chaque attribut se présente comme suit :

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

Le choix de la technologie serveur et de la méthode d’obtention des informations détermine le code utilisé pour stocker les informations dans une variable de session. La syntaxe de base de chaque technologie serveur se présente comme suit :

ColdFusion

<CFSET session.variable_name = value>

ASP

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

L’expression value correspond en général à une expression de serveur telle que Request.Form(“lastname”). Ainsi, si vous utilisez un paramètre d’URL appelé product (ou un formulaire HTML avec la méthode GET et un champ de texte appelé product) pour recueillir des informations, les instructions suivantes stockent les informations dans une variable de session appelée prodID :

ColdFusion

<CFSET session.prodID = url.product>

ASP

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

Si vous utilisez un formulaire HTML avec la méthode post et un champ de texte appelé txtProduct pour recueillir les informations, les instructions suivantes stockent alors ces informations dans la variable de session :

ColdFusion

<CFSET session.prodID = form.txtProduct>

ASP

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

Exemple d’informations stockées dans des variables de session

Vous travaillez sur un site destiné à un vaste public de retraités. Sous Dreamweaver, ajoutez deux liens sur la page d’accueil du site pour que les utilisateurs puissent modifier la taille du texte affiché. Si l’utilisateur souhaite un affichage en caractères plus gros pour un texte plus facile à lire, il lui suffit de cliquer sur un lien ; s’il souhaite un texte de taille standard, il clique sur un autre lien.

Informations stockées dans des variables de session
Informations stockées dans des variables de session

Chaque lien comporte un paramètre d’URL appelé fontsize. Il envoie au serveur la préférence de texte de l’utilisateur, comme le montre l’exemple suivant, spécifique à Adobe ColdFusion® :

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

Stockez la préférence de texte de l’utilisateur dans une variable de session et de l’utiliser afin de définir la taille de police à utiliser dans chaque page demandée par l’utilisateur.

En haut de la page de destination, saisissez le code suivant pour créer une session appelée font_pref qui stocke la préférence de l’utilisateur pour la taille de police.

ColdFusion

<CFSET session.font_pref = url.fontsize>

ASP

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

Lorsque l’utilisateur clique sur le lien hypertexte, la page envoie à la page de destination la préférence de texte de l’utilisateur dans un paramètre d’URL. Le code de la page de destination stocke le paramètre d’URL dans la variable de session font_pref. Pendant la durée de la session de l’utilisateur, toutes les pages de l’application récupèrent cette valeur et affichent la taille de police sélectionnée.

Variables d’application d’ASP et de ColdFusion

Dans ASP et ColdFusion, les variables d’application permettent de mémoriser et d’afficher des informations conservées pendant toute la durée d’utilisation de l’application, quel que soit l’utilisateur. La durée d’utilisation de l’application commence dès que le premier utilisateur demande une page dans l’application et se termine avec l’arrêt du serveur Web. (une application regroupe tous les fichiers se trouvant dans un répertoire virtuel et ses sous-répertoires).

Les variables d’application étant conservées pendant toute la durée d’utilisation de l’application, quel que soit l’utilisateur, elles conviennent parfaitement au stockage des informations nécessaires à tous les utilisateurs, telles que l’heure et la date courantes. La valeur de la variable d’application est définie dans le code de l’application.

Variables de serveur ASP

Vous pouvez définir les variables de serveur ASP suivantes comme sources de contenu dynamique : Request.Cookie, Request.QueryString, Request.Form, Request.ServerVariables et Request.ClientCertificates.

Variables de serveur ColdFusion

Vous pouvez définir les variables de serveur ColdFusion suivantes :

Variables client

Associent des données à un client spécifique. Elles conservent l’état de l’application pendant que l’utilisateur passe d’une page à l’autre et d’une session à l’autre dans l’application. « Conserver l’état » signifie conserver les informations d’une page (ou session) sur la suivante, de façon à ce que l’application se souvienne de l’utilisateur et de ses précédents choix et préférences.

Variables cookie

Accèdent aux cookies transmis au serveur par le navigateur.

Variables CGI

Fournissent des informations sur le serveur exécutant ColdFusion et sur le navigateur à l’origine d’une demande de page, ainsi que d’autres informations sur l’environnement de traitement.

Variables de serveur

Sont accessibles à tous les clients et à toutes les applications du serveur. Elles sont conservées jusqu’à l’arrêt du serveur.

Variables locales

Créées à l’aide de la balise CFSET ou CFPARAM dans une page ColdFusion.

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne