Översikt över källor med dynamiskt innehåll

Senast uppdaterad den 25 apr. 2024
Obs!

Användargränssnittet i Dreamweaver och senare har förenklats. Det kan därför hända att du inte hittar vissa av alternativen i den här artikeln i Dreamweaver och senare. Mer information finns i den här artikeln.

Om källor med dynamiskt innehåll

En källa med dynamiskt innehåll är ett informationslager från vilket du kan hämta och visa dynamiskt innehåll för användning på en webbsida.Källor för dynamiskt innehåll inkluderar inte bara information som lagras i en databas, utan även värden som skickas av HTML-formulär, värden som finns i serverobjekt och andra innehållskällor.

Dreamweaver låter dig enkelt ansluta till en databas och skapa en postuppsättning från vilken dynamiskt innehåll kan extraheras.En postmängd är resultatet av en databasfråga. Det extraherar den specifika information du begär och låter dig visa den informationen på en angiven sida. Du definierar postuppsättningen baserat på informationen som finns i databasen och det innehåll du vill visa.

Olika teknikleverantörer kan använda olika terminologi för en postuppsättning. I ASP och ColdFusion definieras en postuppsättning som en fråga. Om du använder andra datakällor, som användarinput eller servervariabler, är namnet på datakällan som definieras i Dreamweaver detsamma som datakällans namn.

Dynamiska webbsidor kräver en datakälla från vilken man kan hämta och visa dynamiskt innehåll. Dreamweaver låter dig använda databaser, förfrågningsvariabler, URL-variabler, servervariabler, formulärvariabler, lagrade procedurer och andra källor för dynamiskt innehåll. Beroende på datakällan kan du antingen hämta nytt innehåll för att tillgodose en förfrågan, eller modifiera sidan för att möta användarnas behov.

Alla innehållskällor som du definierar i Dreamweaver läggs till i listan över innehållskällor i panelen Bindningar. Sedan kan du infoga innehållskällan på den valda sidan.

Om postmängder

Webbsidor kan inte direkt komma åt data som lagras i en databas. Istället interagerar de med en postuppsättning. En postuppsättning är en deluppsättning av informationen (poster), extraherad från databasen med hjälp av en databasfråga. En fråga är ett sökuttryck som är utformat för att hitta och extrahera specifik information från en databas.

När du använder en databas som innehållskälla för en dynamisk webbsida måste du först skapa en postuppsättning för att lagra den hämtade datan. Postuppsättningar fungerar som en mellanhand mellan databasen som lagrar innehållet och programservern som genererar sidan.Postuppsättningar lagras tillfälligt i applikationsserverns minne för snabbare datahämtning. Servern kasserar postuppsättningen när den inte längre behövs.

En fråga kan producera en postuppsättning som endast innehåller vissa kolumner, endast vissa poster, eller en kombination av båda.En postuppsättning kan också inkludera alla poster och kolumner från en databastabell. Eftersom applikationer sällan behöver använda all data i en databas bör du dock sträva efter att göra dina postuppsättningar så små som möjligt.Eftersom webbservern tillfälligt håller postuppsättningen i minnet använder en mindre postuppsättning mindre minne och kan potentiellt förbättra serverprestandan.

Databasfrågor skrivs i Structured Query Language (SQL, uttalas "sequel"), ett enkelt språk som gör att du kan hämta, lägga till och ta bort data till och från en databas. SQL-byggaren som följer med Dreamweaver gör att du kan skapa enkla frågor utan att behöva förstå SQL. Om du däremot vill skapa komplexa SQL-frågor ger grundläggande kunskaper om detta språk dig möjlighet att skapa mer avancerade frågor och större flexibilitet vid design av dynamiska sidor.

Innan du definierar en postuppsättning för användning med Dreamweaver måste du skapa en anslutning till en databas och – om inga data finns ännu – ange data i databasen. Om du inte har definierat en databasanslutning för din plats ännu kan du läsa kapitlet om databasanslutning för den serverteknologi du utvecklar för och följa anvisningarna för att skapa en databasanslutning.

Om URL- och formulärparametrar

URL-parametrar lagrar information som matas in av användare.För att definiera en URL-parameter skapar du ett formulär eller hypertextlänk som använder GET-metoden för att skicka data. Informationen läggs till i URL:en för den begärda sidan och kommuniceras till servern. När du använder URL-variabler innehåller frågesträngen en eller flera namn-värdepar som är associerade med formulärfälten. Namn/värde-paren läggs till i URL:en.

Formulärparametrar lagrar hämtad information som ingår i HTTP-begäran för en webbsida. Om du skapar ett formulär som använder POST-metoden skickas data som skickas med formuläret till servern. Innan du börjar ska du se till att du skickar en formulärparameter till servern.

Om sessionsvariabler

Sessionsvariabler gör att du kan lagra och visa information som underhålls under en användares besök (eller session).Servern skapar ett annat sessionsobjekt för varje användare och underhåller det under en viss tidsperiod eller tills objektet avslutas explicit.

Eftersom sessionsvariablerna varar under hela användarens session och finns kvar när användaren går från sida till sida inom webbsidan är de idealiska för att lagra användarinställningar. Sessionsvariablerna kan ocks användas för att infoga ett värde i sidans HTML-kod, tilldela ett värde till en lokal variabel eller ge ett värde för att utvärdera ett villkorsuttryck.

Innan du definierar sessionsvariablerna för en sida måste du skapa dem i källkoden. När du har skapat en sessionsvariabel i webbapplikationens källkod kan du använda Dreamweaver för att hämta dess värde och använda det på en webbsida.

Hur sessionsvariabler fungerar

Sessionsvariablerna lagrar information (vanligtvis formulär eller URL-parametrar som skickats av användare) och gör den tillgänglig för alla sidor i en webbapplikation under användarens besök. När användare till exempel loggar in på en webbportal som ger åtkomst till e-post, aktiekurser, väderrapporter och dagliga nyheter lagrar webbapplikationen inloggningsinformationen i en sessionsvariabel som identifierar användaren på webbsidans sidor. Det gör att användaren bara kan se de typer av innehåll som de har valt när de navigerar på webbplatsen.Sessionsvariabler kan också ge en säkerhetsmekanism genom att avsluta användarens session om kontot förblir inaktivt under en viss tidsperiod.Det frigör också serverminne och bearbetningsresurser om användaren glömmer att logga ut från en webbsida.

Informationen lagras i sessionsvariabler så länge som användarsessionen varar. Sessionen börjar när användaren öppnar en sida i applikationen och slutar när användaren inte öppnar en annan sida i applikationen under en viss tidsperiod, eller när användaren avslutar sessionen explicit (vanligtvis genom att klicka på en "logga ut"-länk). Så länge den finns är sessionen specifik för en enskild användare, och varje användare har en separat session.

Använd sessionvariabler för att lagra information som alla sidor i en webbapplikation kan komma åt. Informationen kan vara så varierande som användarens namn, föredragen teckenstorlek eller en flagga som anger om användaren har loggat in. En annan vanlig användning av sessionsvariabler är att hålla en löpande räkning, till exempel antalet frågor som besvarats korrekt hittills i ett onlinequiz, eller de produkter som användaren valt hittills från en onlinekatalog.

Sessionvariabler kan endast fungera om användarens webbläsare är konfigurerad att acceptera cookies. Servern skapar ett sessions-ID-nummer som unikt identifierar användaren när sessionen först initieras, sedan skickar en cookie som innehåller ID-numret till användarens webbläsare. När användaren begär en annan sida på servern, läser servern cookien i webbläsaren för att identifiera användaren och hämta användarens sessionvariabler som lagras i serverns minne.

Samla in, lagra och hämta information i sessionvariabler

Innan du skapar en sessionvariabel måste du först hämta informationen du vill lagra och sedan skicka den till servern för lagring.Du kan samla in och skicka information till servern med HTML-formulär eller hypertextlänkar som innehåller URL-parametrar. Du kan också få information från cookies som lagras på användarens dator, från HTTP-huvudena som skickas av användarens webbläsare med en sidförfrågan, eller från en databas.

Ett typiskt exempel på att lagra URL-parametrar i sessionvariabler är en produktkatalog som använder hårdkodade URL-parametrar skapade med en länk för att skicka produktinformation tillbaka till servern för att lagras i en sessionvariabel. När en användare klickar på länken "Lägg till i kundvagn" lagras produkt-ID:t i en sessionvariabel medan användaren fortsätter att handla. När användaren går vidare till kassan hämtas produkt-ID:t som lagrats i sessionvariabeln.

En formulärbaserad enkät är ett typiskt exempel på en sida som lagrar formulärparametrar i sessionvariabler.Formuläret skickar den valda informationen tillbaka till servern, där en applikationssida bedömer undersökningen och lagrar svaren i en sessionvariabel som ska skickas till en applikation som kan sammanställa svaren från undersökningspopulationen. Eller så kan informationen lagras i en databas för senare användning.

När information har skickats till servern lagrar du informationen i sessionvariabler genom att lägga till lämplig kod för din servermodell till sidan som anges av URL:en eller formulärparametern.Kallas för målsidan, denna sida anges i antingen action-attributet för HTML-formuläret eller href-attributet för hypertextlänken på startsidan.

Efter att du lagrat ett värde i en sessionvariabel kan du använda Dreamweaver för att hämta värdet från sessionvariabler och använda det i ett webbprogram.När du definierat sessionvariabeln i Dreamweaver kan du infoga dess värde på en sida.

HTML-syntaxen är följande:

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

<param name="href"value="destination.html">

Både servertekniken som används och metoden du använder för att få informationen avgör koden som används för att lagra informationen i en sessionvariabel. Den grundläggande syntaxen för varje serverteknik är följande:

ColdFusion

<CFSET session.variable_name = value>

ASP

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

Uttrycket värde är vanligtvis ett serveruttryck som Request.Form("lastname").Om du till exempel använder en URL-parameter med namnet product (eller ett HTML-formulär med metoden GET och ett textfält med namnet product) för att samla information, lagrar följande satser informationen i en sessionsvariabel med namnet prodID:

ColdFusion

<CFSET session.prodID = url.product>

ASP

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

Om du använder ett HTML-formulär med metoden post och ett textfält med namnet txtProduct för att samla informationen, lagrar följande satser informationen i sessionsvariabeln:

ColdFusion

<CFSET session.prodID = form.txtProduct>

ASP

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

Exempel på information som lagras i sessionsvariabler

Du arbetar på en webbplats med en stor målgrupp av äldre personer.I Dreamweaver lägger du till två länkar på välkomstskärmen som låter användare anpassa storleken på webbplatsens text.För större, lättläst text klickar användaren på en länk, och för text i vanlig storlek klickar användaren på en annan länk.

Information lagrad i sessionsvariabler

Varje länk har en URL-parameter som kallas fontsize som skickar användarens textpreferens till servern, som följande Adobe ColdFusion®-exempel visar:

<a href="resort.cfm?fontsize=large">Större text</a><br>

<a href="resort.cfm?fontsize=small">Normal text</a>

Lagra användarens textpreferens i en sessionsvariabel och använd den för att ange teckenstorleken på varje sida som användaren begär.

Nära toppen av målsidan anger du följande kod för att skapa en session som kallas font_pref som lagrar användarens preferens för teckenstorlek.

ColdFusion

<CFSET session.font_pref = url.fontsize>

ASP

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

När användaren klickar på hypertextlänken skickar sidan användarens textinställning i en URL-parameter till destinationssidan.Koden på målsidan lagrar URL-parametern i sessionsvariabeln font_pref.Under användarens session hämtar alla sidor i programmet detta värde och visar den valda teckenstorleken.

ASP- och ColdFusion-applikations- variabler

I ASP och ColdFusion kan du använda applikationsvariabler för att lagra och visa information som underhålls under applikationens livslängd och kvarstår från användare till användare.Applikationens livslängd varar från det att den första användaren begär en sida i applikationen till det att webbservern stoppas.(En applikation definieras som alla filer i en virtuell katalog och dess underkataloger.)

Eftersom applikationsvariabler varar under applikationens livslängd och kvarstår från användare till användare, är de idealiska för att lagra information som måste finnas för alla användare, såsom aktuell tid och datum.Värdet för applikationsvariabeln\ndefinieras i applikationens kod.

ASP-servervariabler

Du kan definiera följande ASP-servervariabler som källor för dynamiskt innehåll: Request.Cookie, Request.QueryString, Request.Form, Request.ServerVariables, och Request.ClientCertificates.

ColdFusion-servervariabler

Du kan definiera följande ColdFusion-servervariabler:

Klientvariabler

Kopplar ihop data med en viss klient. Klientvariabler upprätthåller\napplikationens tillstånd när användaren flyttar från sida till sida i applikationen,\nsamt från session till session."Att upprätthålla tillstånd" betyder att\nbevara information från en sida (eller session) till nästa så att\napplikationen kommer ihåg användaren och användarens tidigare val\noch preferenser.

Cookie-variabler

Ger tillgång till cookies som har skickats till servern av webbläsaren.

CGI-variabler

Tillhandahåller information om servern som kör ColdFusion, webbläsaren som begär en sida och annan information om bearbetningsmiljön.

Servervariabler

Kan nås av alla klienter och program på servern. De kvarstår tills servern stoppas.

Lokala variabler

Skapade med CFSET-taggen eller CFPARAM-taggen\ninuti en ColdFusion-sida.