Omówienie źródeł zawartości dynamicznej

Ostatnia aktualizacja 25 kwi 2024
Spostrzeżenie

Interfejs użytkownika w programie Dreamweaver i nowszych wersjach został uproszczony. Dlatego począwszy od wersji Dreamweaver niektóre opcje opisane w tym artykule mogą nie być dostępne. Więcej informacji zawiera ten artykuł.

Informacje o źródłach zawartości dynamicznej

Dynamiczne źródło zawartości to magazyn informacji, z którego można pobierać i wyświetlać dynamiczną zawartość do użytku na stronie internetowej. Źródła dynamicznej zawartości obejmują nie tylko informacje przechowywane w bazie danych, ale także wartości przesyłane przez formularze HTML, wartości zawarte w obiektach serwera i inne źródła zawartości.

Program Dreamweaver umożliwia łatwe łączenie się z bazą danych i tworzenie zestawu rekordów, z którego można wyodrębnić dynamiczną zawartość.Zestaw rekordów to wynik zapytania wysłanego do bazy danych. Wyodrębnia konkretne informacje, których żądasz, i umożliwia wyświetlanie tych informacji na określonej stronie. Definiujesz zestaw rekordów na podstawie informacji zawartych w bazie danych i zawartości, którą chcesz wyświetlić.

Różni dostawcy technologii mogą używać różnej terminologii dotyczącej zestawu rekordów.W ASP i ColdFusion zestaw rekordów jest definiowany jako zapytanie.Jeśli używasz innych źródeł danych, takich jak dane wejściowe użytkownika lub zmienne serwera, nazwa źródła danych zdefiniowana w programie Dreamweaver jest taka sama jak sama nazwa źródła danych.

Dynamiczne witryny wymagają źródła danych, z którego można pobierać i wyświetlać dynamiczną zawartość. Program Dreamweaver umożliwia używanie baz danych, zmiennych żądań, zmiennych URL, zmiennych serwera, zmiennych formularzy, procedur składowanych i innych źródeł dynamicznej zawartości.W zależności od źródła danych można pobrać nową zawartość w celu spełnienia żądania lub zmodyfikować stronę tak, aby spełniała potrzeby użytkowników.

Każde źródło zawartości zdefiniowane w programie Dreamweaver jest dodawane do listy źródeł zawartości w panelu Powiązania.Następnie można wstawić źródło zawartości do aktualnie wybranej strony.

Informacje o zestawach rekordów

Strony internetowe nie mogą bezpośrednio uzyskiwać dostępu do danych przechowywanych w bazie danych. Zamiast tego wchodzą w interakcję z zestawem rekordów. Zestaw rekordów to podzbiór informacji (rekordów) wyodrębnionych z bazy danych przy użyciu zapytania do bazy danych. Zapytanie to instrukcja wyszukiwania przeznaczona do znajdowania i wyodrębniania określonych informacji z bazy danych.

Podczas używania bazy danych jako źródła zawartości dla dynamicznej strony internetowej musisz najpierw utworzyć zestaw rekordów, w którym będą przechowywane pobrane dane. Zestawy rekordów służą jako pośrednik między bazą danych przechowującą zawartość a serwerem aplikacji generującym stronę. Zestawy rekordów są tymczasowo przechowywane w pamięci serwera aplikacji w celu szybszego pobierania danych. Serwer odrzuca zestaw rekordów, gdy nie jest już potrzebny.

Zapytanie może utworzyć zestaw rekordów, który zawiera tylko określone kolumny, tylko określone rekordy lub kombinację obu tych elementów. Zestaw rekordów może także zawierać wszystkie rekordy i kolumny tabeli bazy danych. Jednak ponieważ aplikacje rzadko muszą używać każdego elementu danych w bazie danych, należy dążyć do tego, aby zestawy rekordów były jak najmniejsze. Ponieważ serwer internetowy tymczasowo przechowuje zestaw rekordów w pamięci, użycie mniejszego zestawu rekordów wykorzystuje mniej pamięci i może potencjalnie poprawić wydajność serwera.

Zapytania do bazy danych są napisane w języku Structured Query Language (SQL, wymawiane „sequel") — prostym języku, który umożliwia pobieranie, dodawanie i usuwanie danych z bazy danych.Kreator SQL dołączony do programu Dreamweaver umożliwia tworzenie prostych zapytań bez konieczności znajomości języka SQL. Jednak jeśli chcesz tworzyć złożone zapytania SQL, podstawowa znajomość tego języka pozwala tworzyć bardziej zaawansowane zapytania i zapewnia większą elastyczność w projektowaniu stron dynamicznych.

Przed zdefiniowaniem zestawu rekordów do użytku z programem Dreamweaver należy utworzyć połączenie z bazą danych i — jeśli dane jeszcze nie istnieją — wprowadzić dane do bazy danych. Jeśli nie zdefiniowano jeszcze połączenia z bazą danych dla witryny, zapoznaj się z rozdziałem dotyczącym połączenia z bazą danych dla technologii serwera, którą rozwijasz, i postępuj zgodnie z instrukcjami tworzenia połączenia z bazą danych.

Informacje o parametrach formularzy i adresów URL

Parametry adresów URL przechowują informacje wprowadzone przez użytkowników.Aby zdefiniować parametr adresu URL, należy utworzyć formularz lub hiperłącze, które używa metody GET do przesyłania danych. Informacje są dołączane do adresu URL żądanej strony i przekazywane do serwera. Podczas używania zmiennych adresu URL ciąg zapytania zawiera jedną lub więcej par nazwa-wartość skojarzonych z polami formularza. Pary nazwa-wartość są dołączane do adresu URL.

Parametry formularza przechowują pobrane informacje, które są dołączane do żądania HTTP strony internetowej. Jeśli utworzysz formularz używający metody POST, dane przesłane przez formularz są przekazywane do serwera. Przed rozpoczęciem upewnij się, że przekazujesz parametr formularza do serwera.

Informacje o zmiennych sesji

Zmienne sesji umożliwiają przechowywanie i wyświetlanie informacji utrzymywanych przez czas trwania wizyty użytkownika (lub sesji). Serwer tworzy różne obiekty sesji dla każdego użytkownika i utrzymuje je przez określony czas lub do momentu jawnego zakończenia obiektu.

Ponieważ zmienne sesji są utrzymywane przez całą sesję użytkownika i pozostają aktywne, gdy użytkownik przechodzi z strony na stronę w obrębie witryny, idealne są do przechowywania preferencji użytkownika.Zmienne sesji można również używać do wstawiania wartości w kodzie HTML strony, przypisywania wartości do zmiennej lokalnej lub dostarczania wartości do oceny wyrażenia warunkowego.

Przed zdefiniowaniem zmiennych sesji dla strony należy utworzyć je w kodzie źródłowym. Po utworzeniu zmiennej sesji w kodzie źródłowym aplikacji internetowej można użyć programu Dreamweaver do pobrania jej wartości i użycia jej na stronie internetowej.

Funkcjonowanie zmiennych sesji

Zmienne sesji przechowują informacje (zazwyczaj parametry formularza lub adresu URL przesłane przez użytkowników) i udostępniają je wszystkim stronom aplikacji internetowej przez czas trwania wizyty użytkownika. Na przykład, gdy użytkownicy logują się do portalu internetowego, który zapewnia dostęp do poczty e‑mail, notowań giełdowych, prognoz pogody i codziennych wiadomości, aplikacja internetowa przechowuje informacje logowania w zmiennej sesji, która identyfikuje użytkownika na wszystkich stronach witryny. Pozwala to użytkownikowi wyświetlać tylko te typy zawartości, które wybrał, podczas nawigowania po witrynie.Zmienne sesji mogą również stanowić mechanizm bezpieczeństwa poprzez zakończenie sesji użytkownika, jeśli konto pozostaje nieaktywne przez określony czas. To również zwalnia pamięć serwera i zasoby przetwarzania, jeśli użytkownik zapomni wylogować się z witryny.

Zmienne sesji przechowują informacje na czas trwania używanej sesji. Sesja rozpoczyna się, gdy użytkownik otwiera stronę w aplikacji, a kończy, gdy użytkownik nie otwiera kolejnej strony w aplikacji przez określony czas lub gdy użytkownik jawnie kończy sesję (zwykle klikając link „wyloguj").Podczas istnienia sesja jest specyficzna dla konkretnego użytkownika i każdy użytkownik ma oddzielną sesję.

Użyj zmiennych sesji do przechowywania informacji, do których może uzyskać dostęp każda strona w aplikacji internetowej. Informacje mogą być tak różnorodne jak nazwa użytkownika, preferowany rozmiar czcionki lub flaga wskazująca, czy użytkownik pomyślnie się zalogował. Innym powszechnym zastosowaniem zmiennych sesji jest prowadzenie bieżącego zestawienia, takiego jak liczba pytań, na które dotychczas udzielono prawidłowej odpowiedzi w quizie internetowym, lub produkty, które użytkownik dotychczas wybierał z katalogu internetowego.

Zmienne sesji mogą funkcjonować tylko jeśli przeglądarka użytkownika jest skonfigurowana tak, aby akceptowała informacje cookie. Serwer tworzy numer identyfikatora sesji który jednoznacznie identyfikuje użytkownika, gdy sesja jest po raz pierwszy inicjowana, następnie wysyła plik cookie zawierający numer identyfikatora do przeglądarki użytkownika. Gdy użytkownik żąda kolejnej strony na serwerze, serwer odczytuje plik cookie w przeglądarce, aby zidentyfikować użytkownika i pobrać zmienne sesji użytkownika przechowywane w pamięci serwera.

Zbieranie, przechowywanie i pobieranie informacji w zmiennych sesji

Przed utworzeniem zmiennej sesji należy najpierw uzyskać informacje, które mają być przechowywane, a następnie wysłać je na serwer w celu ich przechowania.Informacje można zbierać i wysyłać na serwer za pomocą formularzy HTML lub hiperłączy zawierających parametry adresu URL. Można również uzyskać informacje z informacji cookie zapisanych na komputerze użytkownika, z nagłówków HTTP wysyłanych przez przeglądarkę użytkownika wraz z żądaniem strony lub z bazy danych.

Typowym przykładem przechowywania parametrów adresów URL w zmiennych sesji jest katalog produktów, który używa zakodowanych na stałe parametrów adresów URL utworzonych za pomocą łącza w celu wysłania informacji o produkcie z powrotem do serwera, aby zostały przechowane w zmiennej sesji.Gdy użytkownik kliknie link „Dodaj do koszyka", identyfikator produktu zostanie zapisany w zmiennej sesji, podczas gdy użytkownik będzie kontynuował zakupy.Gdy użytkownik przechodzi do strony kasy, identyfikator produktu przechowywany w zmiennej sesji jest pobierany.

Ankieta oparta na formularzach jest typowym przykładem strony, która przechowuje parametry formularza w zmiennych sesji. Formularz odsyła wybrane informacje z powrotem na serwer, gdzie strona aplikacji ocenia ankietę i przechowuje odpowiedzi w zmiennej sesji, aby przekazać je do aplikacji, która może zestawić odpowiedzi zebrane od grupy ankietowanych. Lub informacje mogą być przechowywane w bazie danych do późniejszego użycia.

Po wysłaniu informacji na serwer, przechowujesz informacje w zmiennych sesji, dodając odpowiedni kod dla modelu serwera do strony określonej przez parametr URL lub formularz. Nazywana stroną docelową, ta strona jest określona w atrybucie action formularza HTML lub atrybucie href hiperłącza na stronie początkowej.

Po przechowaniu wartości w zmiennej sesji można użyć programu Dreamweaver do pobrania wartości ze zmiennych sesji i wykorzystania jej w aplikacji internetowej. Po zdefiniowaniu zmiennej sesji w programie Dreamweaver można wstawić jej wartość na stronie.

Składnia HTML dla każdej z nich jest następująca:

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

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

Zarówno używana technologia serwera, jak i metoda uzyskiwania informacji określa kod używany do przechowywania informacji w zmiennej sesji. Podstawowa składnia dla każdej technologii serwera jest następująca:

ColdFusion

<CFSET session.variable_name = value>

ASP

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

Wyrażenie value to zwykle wyrażenie serwera, takie jak Request.Form("lastname"). Na przykład, jeśli używasz parametru URL o nazwie product (lub formularza HTML z metodą GET i polem tekstowym o nazwie product) do zbierania informacji, następujące instrukcje przechowują informacje w zmiennej sesji o nazwie prodID:

ColdFusion

<CFSET session.prodID = url.product>

ASP

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

Jeśli używasz formularza HTML z metodą post i polem tekstowym o nazwie txtProduct do zbierania informacji, następujące instrukcje przechowują informacje w zmiennej sesji:

ColdFusion

<CFSET session.prodID = form.txtProduct>

ASP

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

Przykład informacji przechowywanych w zmiennych sesji

Pracujesz nad witryną z dużą grupą docelową osób starszych.W programie Dreamweaver dodaj dwa łącza do ekranu powitalnego, które pozwalają użytkownikom dostosować rozmiar tekstu witryny.W przypadku większego, łatwego do odczytania tekstu użytkownik klika jedno łącze, a w przypadku tekstu o zwykłym rozmiarze — inne łącze.

Przechowywanie informacji w zmiennych sesji

Każde łącze ma parametr URL o nazwie fontsize, który przesyła preferencję tekstu użytkownika do serwera, jak pokazuje poniższy przykład Adobe ColdFusion®:

<a href="resort.cfm?fontsize=large">Większy tekst</a><br>

<a href="resort.cfm?fontsize=small">Normalny tekst</a>

Przechowaj preferencje tekstu użytkownika w zmiennej sesji i użyj jej do ustawienia rozmiaru czcionki na każdej stronie żądanej przez użytkownika.

W pobliżu górnej części strony docelowej wprowadź następujący kod, aby utworzyć sesję o nazwie font_pref, która przechowuje preferencje rozmiaru czcionki użytkownika.

ColdFusion

<CFSET session.font_pref = url.fontsize>

ASP

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

Gdy użytkownik kliknie hiperłącze, strona wysyła preferencje tekstu użytkownika w parametrze URL do strony docelowej.Kod na stronie docelowej przechowuje parametr URL w zmiennej sesji font_pref.Przez czas trwania sesji użytkownika wszystkie strony aplikacji pobierają tę wartość i wyświetlają wybrany rozmiar czcionki.

Zmienne aplikacji ASP i ColdFusion

W ASP i ColdFusion można używać zmiennych aplikacji do przechowywania i wyświetlania informacji, które są utrzymywane przez czas życia aplikacji i pozostają od użytkownika do użytkownika.Czas życia aplikacji trwa od momentu, gdy pierwszy użytkownik żąda strony w aplikacji, do momentu zatrzymania serwera internetowego.(Aplikacja definiowana jest jako wszystkie pliki w katalogu wirtualnym i jego podkatalogach.)

Ponieważ zmienne aplikacji działają przez cały okres życia aplikacji i są utrzymywane pomiędzy użytkownikami, idealnie nadają się do przechowywania informacji, które muszą istnieć dla wszystkich użytkowników, takich jak bieżąca godzina i data.Wartość zmiennej aplikacji jest definiowana w kodzie aplikacji.

Zmienne serwera ASP

Można zdefiniować następujące zmienne serwera ASP jako źródła zawartości dynamicznej: Request.Cookie, Request.QueryString, Request.Form, Request.ServerVariables oraz Request.ClientCertificates.

Zmienne serwera ColdFusion

Można definiować następujące zmienne serwera ColdFusion:

Zmienne klienta

Kojarzą dane z konkretnym klientem. Zmienne klienckie utrzymują stan aplikacji podczas przechodzenia użytkownika ze strony na stronę w aplikacji, a także z sesji do sesji.„Zachowywanie stanu" oznacza przechowywanie informacji z jednej strony (lub sesji) do następnej, tak aby aplikacja zapamiętywała użytkownika oraz jego poprzednie wybory i preferencje.

Zmienne cookie

Zapewniają dostęp do plików cookie przekazanych serwerowi przez przeglądarkę.

Zmienne CGI

Udostępnia informacje o serwerze, na którym działa ColdFusion, przeglądarce żądającej strony i inne informacje o środowisku przetwarzania.

Zmienne serwera

Są dostępne dla wszystkich klientów i aplikacji na serwerze. Pozostają do momentu zatrzymania serwera.

Zmienne lokalne

Tworzone za pomocą tagu CFSET lub CFPARAM w obrębie strony ColdFusion.