Obsługa formularzy HTML i praca z teks

Transkrypt

Obsługa formularzy HTML i praca z teks
Politechnika Białostocka
Skrypt do pracowni specjalistycznej z przedmiotu
TECHNOLOGIE INTERNETOWE 4
Zadanie 1 – Obsługa formularzy HTML i praca z tekstem
opracował mgr inż. Grzegorz Kraszewski
BIAŁYSTOK 2009
1. Cel ćwiczenia
Ponieważ jest to pierwsze ćwiczenie z tego przedmiotu, celem realizowanym jako
pierwszy jest oswojenie się ze środowiskiem pracy i językiem PHP w praktyce. Studenci
na początku zapoznają się z pracą na koncie zdalnym poprzez klienta FTP lub połączenie
terminalowe SSH. Kolejnym krokiem jest przećwiczenie podstawowych zasad umieszczania kodu PHP w dokumentach HTML, sposobu zgłaszania błędów przez interpreter
PHP oraz ich usuwania. Po części wstępnej studenci mogą przejść do właściwego tematu
ćwiczenia, a więc praktycznego zapoznania się z obsługą w PHP danych wprowadzanych
przez formularze HTML, oraz przetwarzania tekstów w języku PHP.
2. Opis zadania
Zadanie polega na napisaniu aplikacji WWW generującej statystykę występowania par
liter we wprowadzonym tekście. Aplikacja powinna generować prosty formularz HTML
pozwalający na wprowadzenie tekstu z klawiatury i wysłanie go do przetwarzania.
Zakładamy, że tekst może być długi (np. kilkadziesiąt kB), dlatego formularz powinien
używać metody POST do wysłania danych do serwera. Następnym krokiem jest
zanalizowanie tekstu pod kątem częstości występowania par liter w wyrazach.
Przykładowo w wyrazie „kasa” mamy trzy pary liter „ka”, „as” i „sa”. Pod uwagę brać
należy wyłącznie pary w całości znajdujące się w jednym wyrazie. Wszystkie znaki nie
będące literami, należy traktować jako spacje (a więc każdy taki znak wewnątrz wyrazu
rozdziela go na dwa mniejsze). W czasie liczenia duże i małe litery powinny być
traktowane tak samo (pary „as”, „As” i „aS”, to jedna i ta sama para). Wersja minimalna
programu może obsługiwać tylko litery alfabetu angielskiego. W tym przypadku litery
specyficzne dla języka polskiego powinny być traktowane jak swoje bezogonkowe
odpowiedniki. Zalecana jest jednak pełna obsługa polskich znaków.
Program powinien zgromadzić dane na temat 20 najczęściej występujących par, a
następnie narysować histogram słupkowy ich występowania. Histogram jest tworzony w
trybie tekstowym. Cały histogram musi być jednym ciągiem tekstu wewnątrz znacznika
<pre>. 20 par znaków powinno być posortowane od najczęściej do najrzadziej
występującej pary. W przypadku, gdy dwie, lub więcej par wystąpiło taką samą ilość
razy, należy je posortować alfabetycznie. 20 kolejnych słupków, stworzonych ze znaków
„#” odpowiada 20 parom, które wypisane mają być jako etykiety osi poziomej. Oś
pionowa ma być wyskalowana w procentach wszystkich znalezionych par. Histogram
należy wyskalować w pionie tak, aby pierwszy słupek, odpowiadający najczęstszej parze,
miał wysokość całego wykresu, a wysokość ta wynosi 20 linii tekstu. Pod wykresem
umieszczamy tabelę podającą ilość wystąpień (w sztukach i w % w stosunku do
wszystkich par) dla każdej z 20 par. Oprócz tego niezbędne jest wypisanie łącznej ilości
wszystkich znalezionych par.
Dla przykładowego krótkiego tekstu „kakao proroka” mamy 10 par, których częstotliwość występowania przedstawia się następująco:
Para Wystąpienia Procentowo
ka
ro
ak
ao
ok
or
pr
3
2
1
1
1
1
1
30%
20%
10%
10%
10%
10%
10%
Pary, które wystąpiły tylko raz, zostały zgodnie z
warunkami zadania posortowane alfabetycznie.
Łącznie w tekście wystąpiło 10 par liter. W
histogramie pierwszy słupek, dla pary „ka” będzie
miał wysokość 20 linii, drugi dla pary „ro” będzie
miał po zaokrągleniu 13 linii, pozostałe 7 linii.
Przykładowy wykres przedstawiono powyżej.
30% #
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
ka ro ak ao ok or pr
3. Literatura
1. Materiały z wykładów (http://teleinfo.pb.edu.pl/krashan/techint4.html).
2. Dokumentacja języka PHP (http://www.php.net).
3. Dokumentacja HTML (http://www.w3.org/TR/html401/).

Podobne dokumenty