System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu <?php Ming_setScale(1.0); $string = "Ming"; $f = new SWFFont("ComicSansMS.fdb");

Slides:



Advertisements
Podobne prezentacje
Tablice 1. Deklaracja tablicy
Advertisements

Język C/C++ Funkcje.
Podstawy informatyki Informatyka Stosowana Zajęcia nr 2
Algorytmy – zapis struktur programowania
Programowanie I Rekurencja.
SQL INJECTION Wykorzystanie błędów w językach skryptowych
Wprowadzenie do języka skryptowego PHP
Wprowadzenie do języka skryptowego PHP – cz. 2
Języki programowania C++
Bezpieczeństwo aplikacji WWW
Badania operacyjne. Wykład 2
Wykład 5 Przerwania w systemie SAB80C537 dr inż. Andrzej Przybył
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 8: Wykorzystanie procedur i funkcji © Jan Kaczmarek.
Instrukcje Instrukcja : definicja obliczenia i określenie sposobu wykonania tego obliczenia. Program : ciąg instrukcji wykonywanych kolejno od pierwszej.
Podstawy informatyki Informatyka stosowana Prowadzący: Grzegorz Smyk
Tablice.
Komunikacja z arkuszem. Iteracje. Funkcje.
Instrukcja skoku GO TO etykieta Np. GO TO 100 ….. 100WRITE (*,*) Przeskok do instrukcji 100 Uwaga! NIE WOLNO skakać do wnętrzna złożonych instrukcji warunkowych.
PHP wprowadzenie.
PASCAL (2) dr Anna Kwiatkowska.
Schemat Hornera Mgr inż. Michał Szucki.
AWK Zastosowania Informatyki Wykład 1 Copyright, 2003 © Adam Czajka.
Podstawy programowania
Podstawy układów logicznych
A ctive S erver P ages Technologia dostępu do danych.
Instrukcje sterujące część 2
© A. Jędryczkowski – 2006 r. © A. Jędryczkowski – 2006 r.
Algorytmy i Struktury Danych Typy algorytmów
TABLICE C++.
PL/SQL Zajęcia nr II PL/SQL(2) M. Rakowski - WSISiZ.
PHP: warunki, pętle, switch, break, continue
ANNA BANIEWSKA SYLWIA FILUŚ
Technologie internetowe II
Programowanie strukturalne i obiektowe
Języki i automaty część 3.
JAVA c.d.. Instrukcji wyboru SWITCH używamy, jeśli chcemy w zależności od wartości pewnego wyrażenia wykonać jeden z kilku fragmentów kodu. Jest to w.
XML – eXtensible Markup Language
Algorytmy.
C# Platforma .NET CZ.3 Kuba Ostrowski.
Elżbieta Fiedziukiewicz
Przekazywanie parametrów do funkcji oraz zmienne globalne i lokalne
Komendy SQL do pracy z tabelami i bazami
Visual Basic for Applications Poziom podstawowy Zajęcia 2
Projektowanie stron WWW
Podstawy języka Instrukcje - wprowadzenie
ZAPIS BLOKOWY ALGORYTMÓW
Algorytmika.
ALGORYTMY Co to jest algorytm ? Cechy algorytmu Budowa algorytmów
PHP Formularze Damian Urbańczyk. Do czego służą? Formularze to bardzo ważne elementy stron internetowych, dzięki nim dochodzi do wymiany danych pomiędzy.
Iteracje w C# Informatyka Cele lekcji: Wiadomości: Uczeń potrafi:
PHP + MySQL Podstawy pracy z bazą danych Damian Urbańczyk.
Podstawy języka skryptów
PHP Instrukcja warunkowa if Damian Urbańczyk. Warunek? Instrukcję warunkową wykorzystujemy wtedy, gdy chcemy sprawdzić pewien fakt, który może być prawdziwy.
Iga Lewandowska I EMII MU
PHP. PHP obiektowy, skryptowy język programowania zaprojektowany do generowania stron internetowych w czasie rzeczywistym.
Pętle – instrukcje powtórzeń
Seminarium Dyplomowe: Metodyka i Techniki Programowania Autor: Bartłomiej Fornal.
Instrukcje warunkowe w php. Pętla FOR Czasem zachodzi potrzeba wykonania jakiejś czynności określoną ilość razy. Z pomocą przychodzi jedna z najczęściej.
BAZY DANYCH Microsoft Access Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i.
PHP jest językiem skryptowym służącym do rozszerzania możliwości stron internetowych. Jego składnia jest bardzo podobna do popularnych języków programowania.
Wstęp do programowania Wykład 2 Dane, instrukcje, program.
 Formuła to wyrażenie algebraiczne (wzór) określające jakie operacje ma wykonać program na danych. Może ona zawierać liczby, łańcuchy znaków, funkcje,
C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.
Czym jest PHP? ● Językiem programowania przeznaczonym do tworzenia i generowania dynamicznych stron WWW. Działa po stronie serwera: Klient Żądanie strony.
ALGORYTMY I STRUKTURY DANYCH
Dane, zmienne, instrukcje
Haskell Składnia funkcji.
Instrukcja warunkowa if
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Zapis prezentacji:

System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu <?php Ming_setScale(1.0); $string = "Ming"; $f = new SWFFont("ComicSansMS.fdb"); $m = new SWFMovie(); $m->setRate(24.0); $m->setDimension(2400, 1600); $m->setBackground(0xff, 0xff, 0xff); function text($r, $g, $b, $a) { global $f, $m; $t = new SWFText(); $t->setFont($f); $t->setColor($r, $g, $b, $a); $t->setHeight(960); $t->moveTo(-($t->getWidth($string))/2, 220); $t->addString($string); $i = $m->add($t); $i->x = $x; $i->y = $y; $i->rot = $rot; $i->s = $scale; $i->rotateTo($rot); Michał Dudkiewicz PHP i Bazy Danych

pętla for 2 PHP I BAZY DANYCH pętla for – instrukcja sterująca, przy pomocy której skrypt może wykonać fragment kodu ustaloną z góry ilość razy. Ilość wykonań (iteracji) kontrolowana jest zmienną pełniącą rolę licznika. Przykład 1 for ($i=1;$i<10;$i++) { echo $i.” ”; } Rolę licznika pełni zmienna $i wartość początkowa wynosi 1, zakończenie pętli nastąpi kiedy zmienna osiągnie wartość równą 10, licznik zwiększa swoją wartość o 1. Jako wynik wypisane zostaną wartości zmiennej $i od 1 do 9. System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

pętla for 3 PHP I BAZY DANYCH Przykład 2 for ($k=20;$k>10;$k=$k-2) { echo $i.” ”; } *Przykład 3 $proba=false; for ($i=0; $proba==false; $i=$i+0.6) { if ($i>3) $proba=true; komunikat("\$i=".$i); } System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

pętla for 4 PHP I BAZY DANYCH Należy zwracać uwagę na to aby nie manipulować wartością licznika wewnątrz pętli, gdyż może to doprowadzić do działania pętli innego niż planowaliśmy. Wyjątkiem jest sytuacja, kiedy celowo wykonujemy takie działanie. Przykład 4 for ($i=1;$i<10;$i++) { $i=4; echo $i.” ”; } Powstała pętla nieskończona ! System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

pętla while 5 PHP I BAZY DANYCH pętla while – instrukcja sterująca, przy pomocy której skrypt może wykonać fragment kodu wiele razy. Ilość wykonań (iteracji) kontrolowana jest warunkiem wykonania pętli. Pętla nie ma określonej z góry ilości wykonań. Może nie wykonać się ani razu, jeśli warunek wykonania pętli nie będzie spełniony. Za pomocą pętli while można symulować pętlę for. Przykład 5 $i=5; while ($i>10) { $i--; echo $i.” ”; } Pętla nie wykona się ani razu ! System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

pętla do … while 6 PHP I BAZY DANYCH pętla do … while – instrukcja sterująca, podobna do pętli while. Pętla wykona się zawsze co najmniej raz gdyż warunek wykonania pętli sprawdzany jest na jej końcu (a nie na początku jak w przypadku pętli while). Ta pętla także może symulować pętlę for. Przykład 6 $i=5; do { $i--; echo $i.” ”; } while($i>10); Pętla wykona się raz ! System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

instrukcja „wielowarunkowa” case 7 PHP I BAZY DANYCH case – instrukcja warunkowa podobna do if, jednak w odróżnieniu od if może sprawdzać wiele wartości dla danego warunku (najczęściej warunkiem jest wartość zmiennej) i w zależności od wartości warunku, wykonywać określone instrukcje. Pozwala zastąpić kilka warunków if. Ważnym elementem jest brake. Przykład 7 switch ($a) { case ”jeden”: include(”jeden.php”); break; case ”trzy”: include(”trzy.php”); break; default: include(”dwa.php”); } System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

obsługa formularza po stronie serwera 8 PHP I BAZY DANYCH $_POST – zmienna tablicowa zawierająca dane z naszego formularza wysłanego metodą POST. Takie zmienne należy ze względów bezpieczeństwa bezwzględnie przetworzyć ! Istnieją proste sposoby, które pozwalają włamać się na strony, czy też wyrządzić spore szkody w bazach danych. Jedną z prostych i bardzo skutecznych (kiedy nie ma zabezpieczeń) technik jest SQLInjection i PHPInjection System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

SQLInjection 9 PHP I BAZY DANYCH SQLInjection – (z ang., dosłownie zastrzyk SQL) – luka w zabezpieczeniach aplikacji internetowych polegająca na nieodpowiednim filtrowaniu lub niedostatecznym typowaniu i późniejszym wykonaniu danych przesyłanych w postaci zapytań SQL do bazy danych. Podatne są na niego systemy złożone z warstwy programistycznej (przykładowo skrypt w PHP itp.) dynamicznie generującej zapytania do bazy danych (MySQL, PostgreSQL itp.). Wynika on zwykle z braku doświadczenia lub wyobraźni programisty. Podstawowym sposobem zabezpieczania przed SQLInjection jest niedopuszczenie do nieuprawnionej zmiany wykonywanego zapytania. (źródło Wikipedia) System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

PHPInjection 10 PHP I BAZY DANYCH PHPInjection – PHP Injection polega na dopisywaniu przez złośliwych użytkowników fragmentów kodu do przesyłanych zmiennych m.in. za pośrednictwem formularzy znajdujących się na stronach WWW. Przed PHP Injection można zabezpieczyć się filtrowaniem przekazywanych parametrów - wygląda to dokładnie tak samo, jak w przypadku SQL Injection, jednak atak nie ma bezpośredniego (lub nie ma w ogóle) wpływu na bazę danych. (źródło Wikipedia) System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

wyrażenia regularne 11 PHP I BAZY DANYCH Wyrażenie regularne – w PHP są to pewne wyrażenia, opisujące w sposób ogólny jak ma wyglądać łańcuch znaków (napis). Mając taki opis (wzorzec) można testować czy dany łańcuch spełnia nasze wymagania np.: czy jest poprawnym składniowo adresem . Wyrażenia regularne konstruuje się w oparciu o: zwykłe znaki alfanumeryczne (litery, cyfry) kwantyfikatory powtórzeń wyrażenia logiczne (negacja, alternatywa) zakresy System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

kwantyfikatory powtórzeń 12 PHP I BAZY DANYCH.- jeden jakikolwiek znak (wyjątkiem jest znak nowej linii). Czyli pojedyncza litera, cyfra, przecinek, spacja, czy jakikolwiek inny znak będzie pasował do tego wzorca *- zero, jedno lub więcej wystąpień ? - zero lub jedno wystąpienie + - jedno lub więcej wystąpień {n}- dokładnie n wystąpień {n,}- co najmniej n wystąpień {,m}- co najwyżej m wystąpień {n,m}- co najmniej n i nie więcej niż m wystąpień System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

znaki specjalne 13 PHP I BAZY DANYCH We wzorcach można również stosować specjalne litery poprzedzone znakiem odwrotnego ukośnika (ang. backslash), które mają specjalne znaczenie. Na przykład \d oznacza dowolną cyfrę (znak z zakresu od 0 - 9), a \s to spacja. Oczywiście w tym przypadku również można wykorzystać kwantyfikatory powtórzeń. Najprostszy wzorzec (nie uwzględniający znaczenia analizowanych danych) dla jednej z form zapisu numeru identyfikacji podatkowej może wyglądać następująco: \d{3}-\d{2}-\d{2}-\d{3} Odwrotny ukośnik może również służyć do usunięcia specjalnego znaczenia niektórym znakom. System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

zakresy 14 PHP I BAZY DANYCH Możliwe jest również definiowanie zestawów dopuszczalnych znaków. Wykorzystuje się do tego nawiasy kwadratowe - [ i ]. Dla przykładu, dla określenia wzorca dla liczby w systemie szesnastkowym (wykorzystującej jako cyfry wszystkie cyfry oraz wielkie litery od A do F) wystarczy użyć: 0x[ ABCDEF]+ Wypisywanie wszystkich możliwości jest nieco żmudne. Można skorzystać z zakresów. I tak, ten sam przykład można zapisać jako: 0x[0-9A-F]+ System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

negacja, alternatywa 15 PHP I BAZY DANYCH W pewnych przypadkach lepiej jest określić znaki, które nie mogą się pojawić niż znaki, które mogą się pojawić, chociażby z powodu ilości pozycji do wpisania. Do zdefiniowania zestawu znaków, które wystąpić nie mogą służy znak ^ (ale tylko gdy rozpoczyna definicję zestawu znaków). Przykładowo, poprawnie zapisanego hiperłącza to: ]+">[^>]+ Alternatywa to możliwość zdefiniowania kilku wzorców dla tego samego miejsca w analizowanym ciągu znaków. Na przykład słowo cztero lub ośmioliterowe to: [a-zA-Z]{4}|[a-zA-Z]{8} Wykorzystywany jest tutaj znak |. System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

początek i koniec linii 16 PHP I BAZY DANYCH Istnieje również możliwość oznaczenia początku i końca linii. Początek linii jest oznaczany znanym już symbolem ^, jednak aby był traktowany jako początek linii, to musi on występować na początku wzorca, a koniec to $, analogicznie, powinien występować na końcu wzorca. Wzorzec opisujący poprawny składniowo adres System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

funkcje sprawdzania preg_match, preg_match_all 17 PHP I BAZY DANYCH Przykład 8 (sprawdzanie czy podany jest poprawny) $wzorzec = $dane = $_POST[' ']; if(preg_match($wzorzec,$dane)) echo(" prawidłowy"); else echo(" nieprawidłowy"); Funkcja preg_match_all różni się od funkcji preg_match tym, że wyszukuje wszystkie ciągi pasujące do wzorca i nie poprzestaje na znalezieniu tylko pierwszego. Wynik zwraca w postaci tablicy. System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

funkcja preg_replace 18 PHP I BAZY DANYCH preg_replace - funkcja potrafi zamienić w tekście wystąpienie jednego łańcucha znaków (napisu) na inny łańcuch znaków (napis). Napis do wymiany opisany jest wyrażeniem regularnym. Zamiana adresu strony na działający link: 1)Musimy opisać protokół. Ustalamy, że interesują nas tylko najpopularniejsze: http, https, ftp czy nntp. (wszystkie tutaj wymienione protokoły mają w środku litery t i p, niektóre z nich mogą zostać rozszerzone o literę s). Dlatego początek adresu możemy zapisać jako: [a-zA-Z]{1,2}tps?:\/\/ System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

funkcja preg_replace PHP I BAZY DANYCH 2)Opis domeny (podobnie jak przy wzorcu na adres ), rozszerzymy o numer portu TCP na którym ma zostać nawiązane połączenie: [a-zA-Z0-9\-.]+\.[a-zA-Z]{2,4}(:[0-9]{1,5})?\/ System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu W nawiasach okrągłych jest opisany numer portu, potem jest znak ? określający, że wyrażenie może wystąpić co najwyżej raz. Nawiasy okrągłe powodują utworzenie podwyrażenia i znak ? będzie miał zastosowanie tylko do tego podwyrażenia. 19

funkcja preg_replace 20 PHP I BAZY DANYCH Przykład 9 (zamiana tekstu na link) $wzorzec = '/[a-zA-Z]{1,2}tps?:\/\/[a-zA-Z0-9\-.]+\.[a-zA-Z]{2,4}(:[0-9]{1,5})?\/[^\n\s]*/'; $zamiana = ' \0 '; $wynik = preg_replace($wzorzec, $zamiana, $tresc); W zmiennej zamiana występuje wyrażenie \0 oznaczające ciąg, który został dopasowany do całego wyrażenia. System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

funkcja preg_replace 21 PHP I BAZY DANYCH Przykład 10 (zamiana wg tablicy z wzorcami) $usmiechy = array( '/:?\)/', '/:?\(/', '/:?\-/', '/:?\[/'); $zamiana = array( ' ', ' ', ' ‘, ' '); $tresc = preg_replace($usmiechy, $zamiana, $tresc); Każde wystąpienie :), :(, :/, ;) w tekście reprezentowanym przez zmienną $tresc zostanie zastąpione odpowiednim obrazkiem. System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

funkcje explode i implode 22 PHP I BAZY DANYCH funkcja explode - funkcja pozwalająca utworzyć z ciągu znaków oddzielonych jakimś ustalonym znakiem (separatorem) tablicę. Przykład 10 (tablica z wszystkich elementów) $text = ”14/09/2009;19:23:33;Internet Explorer; ” $tablica = explode(”;”,$text); Przykład 11 (tablica tylko z 2 pierwszych elementów) $text = „jeden|dwa|trzy|cztery”; $tab = explode('|', $str, 2); System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

funkcje explode i implode 23 PHP I BAZY DANYCH Przykład 12 (tablica z wszystkich elementów oprócz ostatniego) $text = „jeden|dwa|trzy|cztery”; $tab = explode('|', $str, -1); funkcja implode - funkcja pozwalająca utworzyć z tablicy ciąg znaków oddzielonych jakimś ustalonym znakiem (separatorem. Przykład 13 $tablica = array(‘kowalski', ‘ '); $napis = implode(",", $array); System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu

Zakończenie 24 PHP i MING System podwyższenia kwalifikacji zawodowych pracowników Izby Celnej w Toruniu cdn …