Wyższa szkoła ubezpieczeń I bankowości w warszawie



Pobieranie 2.26 Mb.
Strona8/8
Data29.10.2017
Rozmiar2.26 Mb.
1   2   3   4   5   6   7   8

Mimo, iż w początkach lat dziewięćdziesiątych w dziedzinie projektowania Stron dokonał się znaczący postęp (pojawiły się nawet obiektowe edytory, gdzie kod był generowany przez aplikacje na podstawie umiejscowienia tekstu i obrazków w oknie edytora), były one cały czas statyczne, tj. można było dopisywać tekst przy użyciu formularzy (wykorzystywane było to w tzw. „księgach gości” lub prostych forach dyskusyjnych), jednak zawartość była taka sama niezależnie kto ją oglądał. To stanowczo za mało. Administratorzy serwisów WWW potrzebowali narzędzi umożliwiających identyfikowanie użytkowników i zmianę wyglądu oraz działania serwisów dla ich potrzeb. Odpowiedzią na to były „cookies”, CGI, oraz inne, niżej opisane, techniki ze wspólną cechą: interpretowanie dokumentu i generowanie wyniku odbywa się bezpośrednio przez serwer.



Cookies są małymi plikami tekstowymi wysyłanymi przez serwer do klienta przeglądarki. Nie są one widoczne dla użytkowników- zwykle także ich zawartość nie jest łatwa do zinterpretowania. Występuje w niej numer bądź imię, przydomek lub adres e-mail użytkownika. Te dane mogą być zarówno dobrowolnie dostarczane przez użytkownika przez logowanie (formularz na Stronie), lub dostarczane przez przeglądarkę. W „ciastku” zawarte są też dane dotyczące wyglądu lub zachowania Strony, zwykle jest to szereg znaków i liczb o funkcjach zdefiniowanych przez projektanta Strony. Cookies dzielą się na jednorazowe i permanentne. Jednorazowe cookie identyfikuje użytkownika przez sesję do czasu zamknięcia okna przeglądarki (jest to znakomite rozwiązanie gdy sesja wymaga logowania), permanentne „ciastka” zostają zachowane w pamięci podręcznej przeglądarki do czasu ich wygaśnięcia (tj. upłynięcia daty ważności dostarczonej przez serwer). Obsługa plików cookies jest zaimplementowana w JS i w PHP (opisanym w dalszej części tego rozdziału).


Rysunek 11: CGI- man2html



CGI (Common Gateway Interface) są zupełnie innym podejściem do projektowania serwisów. Mogą być to programy lub skrypty, które, wywoływane przez serwer z odpowiednimi parametrami, generują kod Strony wysyłany do klienta. Wykorzystując informacje zawarte w „ciastku” mogą modyfikować generowany kod, by wyświetlane były informacje interesujące dla użytkownika. Zostało to wykorzystywane przez firmy zajmujące się marketingiem takie jak DoubleClick.com do zbierania informacji o użytkownikach Internetu, by później wyświetlać zgodne z ich zainteresowaniami bannery, małe obrazki - reklamy. CGI mogą także służyć do łączenia serwera z innymi programami, np. bazami danych, mogą dokonywać konwersji tekstu (np. w celu tłumaczenia z języka obcego), czy konwersji formatu pliku (man2html – rys. 11, doc2html: oglądanie UNIXowych manpages, oraz, tak jak mswordview, dokumentów programu Word przez przeglądarkę). Mają jednakże jedną wadę, są programami lub (w przypadku skryptów) wymagają programów – interpreterów języków, w których są napisane (tak jak na przykład Perl). Ogranicza to ich zastosowanie do dedykowanych platform lub systemów operacyjnych a także, w przypadku niedostrzeżonego błędu, na dostęp do krytycznych części systemu operacyjnego.

SHTML lub Parsed HTML jest to technika polegająca na przetwarzaniu dokumentu bezpośrednio przez serwer WWW. Używane są to tego tzw. Server-Side Includes (SSI) - dodatki ze strony serwera. Można ich używać by:

  1. zmieniać zawartość dokumentu (włącznie z używaniem wielu języków) w zależności od kryteriów co do odwiedzających Stronę klientów (np.: ich domen czy przeglądarek),

  2. zmieniać zawartość dokumentu w zależności od czasu odwiedzenia (data, godzina, święta narodowe itd.) Witryny,

  3. używać, przez sieć załączników (ang.: includes) i przyporządkowań, wspólnej szaty graficznej dla dokumentów, a ich zawartość zmieniać za pomocą innych metod (np.: CGI),

a wszystko to bez udziału skryptów CGI czy interpreterów jak poniższy PHP.

PHP (Hypertext Preprocessor, wcześniej Personal Home Page), stworzony przez Rasmusa Lerdorfa w latach 1994-1995, jest złożonym i bardzo rozbudowanym językiem skryptowym38. Jednak nie jest ograniczony do tworzenia skryptów CGI, jest interpretowany bezpośrednio na serwerze (przez dołączony moduł, który to z kolei może być też CGI) a efekt tej interpretacji jest wysyłany do klienta. Można także skrypty umieszczać wewnątrz dokumentu HTML wewnątrz specjalnego znacznika (Można znacznik ten zmienić w konfiguracji interpretera).

Tabela 10: PHP wewnątrz dokumentu HTML (Źródło: PHP Manual)







Example





echo "Hi, I’m a PHP script!";

?>

//DTD HTML 3.2//EN">







phpinfo()





php logo

PHP Version 4.0.6




(...)
Interpreter języka jest przy tym niezwykle mały, zajmuje po skompilowaniu (rozprowadzany jest jako kod źródłowy) niecałe 1,5 MB. Oczywiście, przy implementacji większej liczby standardów (domyślna konfiguracja uwzględnia tylko te najczęściej używane) rozmiar pliku wykonywalnego znacznie wzrasta.



ASP (Active Server Pages) jest równie popularny39. Firma Microsoft zaimplementowała w swoim oprogramowaniu WWW obsługę języków VBScript i Visual BASIC nazywając ją ASP (pod koniec roku 2001 ma zostać wprowadzona nowa generacja ASP będąca częścią platformy .NET). Niestety czyni to serwery bardzo wrażliwe na wszelkie ataki wirusowe, ponieważ aplikacje systemów Windows wykorzystują zarówno VBScript jak i Visual BASIC do komunikacji między sobą. Przykładem mogą być tak zwane makrowirusy, takie jak I Love You i Melissa. Są to wirusy, które rozpowszechniają się w postaci skryptów odpowiedzialnych za zachowanie dokumentów programów Word, Excel lub Outlook – makr, stąd nazwa. Obydwa były napisane w Visual BASICu. Nie jest więc trudne napisanie wirusa, który, odebrany pocztą elektroniczną, zniszczy lub zmodyfikuje działanie usługi WWW (takie wirusy już zostały stworzone). Zaletą zastosowania ASP jest jednak pełna integracja serwisu w system operacyjny Windows (nie istnieje implementacja dla innych systemów, jedynie konwerter kodu ASP działający jako CGI dla serwerów na inne niż Windows systemy operacyjne, oraz interpreter kodu wbudowany w PHP4) umożliwiające współpracę z aplikacjami korzystających z wewnętrznej interkomunikacji w systemie i ułatwienie transakcji pieniężnych przez zastosowanie oprogramowania Microsoft Transaction Server (MTS).

Innym rozwiązaniem jest zastosowanie JSP (Java Server Pages)40. Jest to stosunkowo nowa technologia (powstała na przełomie lat 1999-2000) stworzona przez społeczność programistów języka Java do tworzenia aplikacji sieciowych bazujących na WWW. Od poprzednich różni się tym, że za zachowanie się Witryn odpowiadają małe programy (tzw. serverlety) napisane w języku Java. Do ich obsługi stosuje się specjalny serwer (na przykład, bazujący na Apaczu, Tomcat), mający możliwość wykonywania javowych programów odpowiedzialnych za część dynamiczną Witryny. Tak więc w serwisie internetowym można łatwo modyfikować wygląd zewnętrzny Stron bez samego modyfikowania narzędzi odpowiedzialnych za funkcjonowanie serwisu. W ramach tego można rozszerzać i łączyć działanie serverletów przy pomocy tzw. JavaBeans- małych programów spełniające określone funkcje i mogących być (na podobieństwo klocków LEGO) dowolnie ze sobą łączonych.


    1. PHP

Jak już wspomniano, PHP jest złożonym językiem skryptowym o cechach języka programowania. Tak więc, można w nim definiować złożone zadania wymagające podania dodatkowych parametrów wyświetlania Strony. Będzie to potrzebne w, stanowiącym przedmiot tej pracy, modelu, ponieważ użytkownik będzie wybierał opcje wyświetlania, na przykład przy sortowaniu informacji o wpłaconych składkach. Parametry te będą wykorzystywane w formie zmiennych, a bazujące na nich wyrażenia warunkowe będą wykonywane, jeżeli zmienna spełnia założone warunki. Tabela 15 przedstawia fragment kodu PHP Strony służącej do zamieszczania wiadomości na forum dyskusyjnym lub wysyłania ich pocztą elektroniczną:



Tabela 12: PHP- działanie skryptu warunkowego ze zmienną





</b>Send Message<b>



bgcolor="#e0e0b0" background="pictures/back1.jpg">



if ($zmienna=="email")

{

echo "

Wyślij E-Mail



action=\"cgi-bin/smtp.pl\" method=\"post\">”;

}

else

{

echo "

Zamieść wiadomość w forum



action=\"send.php\" method=\"post\">”;

}

echo "

border=\"0\">











align=\"right\">face=\"Arial\" size=\"3\">Nadawca:



align=\"middle\">>





align=\"right\">

face=\"Arial\" size=\"3\">E-mail:









align=\"right\">

face=\"Arial\" size=\"3\">Temat:

colspan=\"2\" align=\"left\">

TYPE=text NAME=\"subject\" SIZE=\"30\" MAXLENGTH=60>

TYPE=text NAME=\"realname\" SIZE=\"30\" MAXLENGTH=30>
TYPE=text NAME=\"email\" SIZE=\"30\" MAXLENGTH=90> align=\"middle\">>




";

?>



Pobieranie 2.26 Mb.

Share with your friends:
1   2   3   4   5   6   7   8




©operacji.org 2020
wyślij wiadomość

    Strona główna