Dlaczego PHP? - zalety



Podobne dokumenty
Bazy Danych i Usługi Sieciowe

Dostęp do baz danych z serwisu www - PHP. Wydział Fizyki i Informatyki Stosowanej Joanna Paszkowska, 4 rok FK

Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w

Języki skryptowe - PHP. PHP i bazy danych. Paweł Kasprowski. pawel@kasprowski.pl. vl07

PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych:

Umieszczanie kodu. kod skryptu

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

Dynamiczne przetwarzanie stron. dr Beata Kuźmińska-Sołśnia

Autor: Joanna Karwowska

Zagadnienia. Konstrukcja bibliotek mysql i mysqli w PHP. Dynamiczne generowanie stron. Połączenie, zapytanie i sesja

Należy ściągnąć oprogramowanie Apache na platformę

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice.

Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki

Projektowani Systemów Inf.

System operacyjny Linux

1 Podstawy c++ w pigułce.

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Krótki kurs JavaScript

baza samochodów (komis)(1)

Internetowe bazy danych

Skrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach:

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

BAZY DANYCH. Obsługa bazy z poziomu języka PHP. opracowanie: Michał Lech

Wykład 5: PHP: praca z bazą danych MySQL

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

Część 4 życie programu

Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists()

Podstawy programowania skrót z wykładów:

1 Podstawy c++ w pigułce.

ZMIENNE. Podstawy PHP

Materiały do laboratorium MS ACCESS BASIC

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Bloki anonimowe w PL/SQL

Serwer WWW Apache. Plik konfiguracyjny httpd.conf Definiujemy m.in.: Aktualne wersje 2.4.6, , zakończony projekt

Zajęcia 11 wykorzystanie MySQL w PHP

Cw.12 JAVAScript w dokumentach HTML

Personal Home Page PHP: Hypertext Preprocessor

1 Przygotował: mgr inż. Maciej Lasota

5. Współpraca z bazą danych MySQL

Obiektowe bazy danych

Języki skryptowe w programie Plans

Zakres treści Czas. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Lekcja 1. Składnia języka zmienne i podstawowe instrukcje PHP. Do wyświetlania tekstu służy instrukcja echo echo Hello world ;

Wykład 03 JavaScript. Michał Drabik

Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Aplikacje WWW - laboratorium

Funkcje i instrukcje języka JavaScript

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Programowanie obiektowe

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

6. Bezpieczeństwo przy współpracy z bazami danych

Podstawy programowania III WYKŁAD 2

Bazy danych II. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

Dokumentacja interfejsu HTTPD. Platforma BSMS.PL Instrukcja podłączenia po przez http

Zaawansowane bazy danych i hurtownie danych

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Wysyłanie pliku na serwer. Plik na serwerze.

Bazy danych i strony WWW

SSK - Techniki Internetowe

Oczywiście plik musi mieć rozszerzenie *.php

Aplikacje WWW - laboratorium

Grafika PHP dla początkujących

JAVAScript w dokumentach HTML - przypomnienie

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

Bazy Danych i Usługi Sieciowe

Pętle. for, while, do... while, foreach. Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.

4. Pliki Informacje ogólne o dostępie do plików w PHP Sprawdzanie istnienia pliku file_exists()

5-6. Struktura dokumentu html. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

DECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ];

Składowane procedury i funkcje

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład VII

Podstawy Programowania C++

Sprzeg podstawowy do baz danych w PHP Mateusz Sowa, 2007

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

Michał Bielecki, KNI 'BIOS'

SUM Edukacja Techniczno Informatyczna Języki i Systemy Programowania. Wykład 3. dr Artur Bartoszewski - WYKŁAD: Języki i Systemy Programowania,

Metody Metody, parametry, zwracanie wartości

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Systemy internetowe Wykład 3 PHP

Internetowe bazy danych

Programowanie w języku Python. Grażyna Koba

JAVAScript w dokumentach HTML (2)

Systemy internetowe. Wykład 4 mysql. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Zasady programowania Dokumentacja

PHP i MySQL dla każdego / Marcin Lis. Wyd. 3. Gliwice, cop Spis treści

Podstawy JavaScript ćwiczenia

Zofia Kruczkiewicz, Programowanie obiektowe - java, wykład 2 1

SIECI KOMPUTEROWE I BAZY DANYCH

Ćwiczenie 1. Wprowadzenie do programu Octave

JAVAScript w dokumentach HTML (1)

Liczniki odwiedzin. Licznik odwiedzin na plikach

Transkrypt:

Dlaczego PHP? - zalety (+) bezpieczeństwo kodu - PHP wykonuje się po stronie serwera ( niezależność od przeglądarki) (+) bezpieczeństwo danych - wykorzystanie ssl i HTTPS (+) PHP jako moduł serwera WWW (+) generowanie HTML, GIF, JPG, PDF (+) dostępność kodu

Dlaczego PHP? - wady (-) język interpretowany więc wolny (-) brak systemu transakcji (-) brak STDIN - w Linuxie można obejść otwierając jawnie plik /dev/stdin

Dla kogo PHP? Administratorzy serwisów WWW autorzy dynamicznych stron WWW użytkownicy bez prawa do uruchamiania skryptów CGI projektanci aplikacji mają za darmo interfejs użytkownika (HTML)

literatura Craig Hilton, Jeff Willis PHP3 - internetowe aplikacje bazodanowe Marek Nowakowski PHP4 & MySQL dla webmastera Rasmus Lerdorf Leksykon PHP http://www.php.pl ; http://www.php.net http://ux.ap.krakow.pl/~bar/ Strona tymczasowa, trochę polskojęzycznych informacji, kursy PHP i MySQL,

Umieszczanie PHP w dokumentach HTML Kod skryptu umieszczany jest bezpośrednio w kodzie HTML ujęty w parę znaczników: <?PHP...?> (skrócone <?...?> <HTML><BODY> <?PHP echo Jestem skryptem PHP <BR>`;?> </BODY></HTML> Skrypt niekoniecznie w sekcji BODY przeglądarka wyświetla stronę HTML i WYNIK skryptu PHP Przeglądarka ignoruje odstępy i znaki końców akapitu, trzeba je zastąpić odpowiednimi znacznikami HTML (&nbsp, <BR> itp.) plik skryptu powinien mieć jedno z akceptowanych rozszerzeń (.php), treść skryptu jest niedostępna dla użytkownika po stronie przeglądarki

Możliwości języka Dołączanie plików include ("filename.abc") zmienne tablice operatory i wyrażenia instrukcje (struktury sterujące) funkcje użytkownika integracja z bazami danych - ogromna ilość funkcji pomocniczych dedykowanych dla najpopularniejszych systemów (MySQL, ORACLE, PostgreSQL, Informix) funkcje obsługi :stringów, tablic, dat, URL, sieci, ODBC, grafiki i plików

PHP - Dołączanie plików include ("nazwapliku.php ); dołączanie plików jest nieodzownym mechanizmem zapewniającym przejrzystość kodu i zwiększającym bezpieczeństwo, wymagane jest aby w dołączanym pliku występowały znaczniki PHP Do standardowych metod należy definiowanie w osobnych plikach pewnych stałych elementów stron (np. nagłówków) i dołączanie ich do różnych stron Pliki dołączane muszą mieć odpowiednie atrybuty

PHP - zmienne W zmiennych odgrywa znaczenie wielkość liter PHP operuje następującymi typami danych: Liczby całkowite Liczby zmiennopozycyjne Łańcuchy znaków Tablice Zmienne tworzymy BEZ ich deklarowania w momencie pierwszego przypisania wartości: $x=1.234; $i=3; tab[0]='ala'; tab[]='ma kota';

PHP - operatory i wyrażenia Oper. logiczne <, <=, >, >=,!=, == #$x<=3; Oper. Przypisania = # $x=2*$y; Złożone $a++ ; #$a=$a+1; Wartości logiczne: FALSE - odpowiada "" {pusty napis} lub 0 TRUE - cokolwiek innego Każda zmienna jest skojarzona z wartością logiczną i tak np. pusta tablica - FALSE, zmienna jeszcze nie użyta - FALSE

PHP - instrukcje Instrukcja warunkowa - jeżeli... A jeżeli NIE... IF ($warunek) { instrukcja; } ELSE { instrukcja;} dopóki warunek powtarzaj instrukcję WHILE ($warunek) { instrukcja; } powtarzaj instrukcję dopóki warunek DO { instrukcja; } WHILE ($warunek;)

PHP - instrukcje FOR (instrukcja0;$warunek;instrukcja_sterująca) { instrukcja_w_pętli;} konstrukcja często stosowana przy ustalonej liczbie powtórzeń for($i=0;$i<10;$i++) {echo $i;} instrukcja wyboru: SWITCH ($x) case 0: instrukcja0; break; case 1: instrukcja1; break; DEFAULT : instrukcja_ani_1_ani_2; }

PHP - funkcje Funkcja jest konstrukcją programistyczną wykonująca określony algorytm i przyjmującą określoną wartość. Pozwala również dzielić złożone problemy na fragmenty, Wewnątrz funkcji powinna się znaleźć instrukcja RETURN definiująca wartość funkcji (zwracająca wartość) definicja przykładowa: function moja($a,$b) { return ($a+$b)/2; } użycie: echo moja(3,5); #wypisze wartość 4

PHP - funkcje - argumenty Przekazywanie przez wartość Z tą sytuacją mamy do czynienia gdy funkcja ma w odpowiedzi zwrócić pewną wartość ale NIE ZMIENIĆ wartości argumentów definicja przykładowa: function srednia($a,$b) { return ($a+$b)/2; } użycie: echo srednia(3,5); #wypisze wartość 4 Przekazywanie przez zmienną Z tą sytuacją mamy do czynienia gdy chcemy aby funkcja w efekcie swojego działania ZMIENIAŁA wartości argumentów definicja przykładowa: function zamiana(&$a,&$b) { $z=$a; $a=$b; $b=$z; return 0; #funkcja niczego nie liczy } użycie: $x=1;$y=2; $temp=zamiana($x,$y); echo $x,$y; wypisane zostanie 2 1 a nie 12 co oznacza że funkcja zmieniła swoje argumenty

PHP - przekazywanie parametrów PHP udostępnia ciekawy mechanizm obsługujący sytuacje gdy chcemy w samym programie narzucić funkcji przekazanie parametru przez odwołanie: function zamiana($a,$b) { $z=$a; $a=$b; $b=$z; } użycie: $x=1;$y=2; $temp=zamiana(&$x,&$y); echo $x,$y; #wypisanie 2 1 użycie: $x=1;$y=2; $temp=zamiana($x,$y); echo $x,$y; #wypisanie 1 2

PHP- wartości domyślne funkcji i zasięg zmiennych Obsługa sytuacji gdy w wywołaniu nie podamy niektórych argumentów function opis($nazwisko="nieznany"){ return "Ten człowiek ma na nazwisko $nazwisko";} echo opis("nowak"); da w efekcie : Ten człowiek ma na nazwisko Nowak echo opis() ; da w efekcie : Ten człowiek ma na nazwisko NIEZNANY UWAGA!: zmienne z programu NIE są widoczne w funkcjach $x=1; function test1() { echo $x;} function test2() { global $x; echo $x;} test1();test2(); da w efekcie 1 ( a nie 11 gdyż wywołanie test1() nic NIE WYPISAŁO

PHP- obsługa plików (1) Korzystanie z plików wymaga następujących czynności : otwarcie pliku $fi=fopen("$nazwa_pliku","$tryb"); 'r' - Otwórz tylko do odczytu; ustawia wskaźnik pliku na początku pliku. 'r+' - Otwórz do odczytu i zapisu; ustawia wskaźnik pliku na początku pliku. 'w' - Otwórz tylko do zapisu; ustawia wskaźnik pliku na początku pliku i obcina plik (zeruje) do 0 długości. Jeśli plik nie istnieje to próbuje go utworzyć. 'w+' - Otwórz do odczytu i zapisu; ustawia wskaźnik pliku na początku pliku i obcina plik (zeruje) do 0 długości. Jeśli plik nie istnieje to próbuje go utworzyć. 'a' - Otwórz tylko do zapisu; ustawia wskaźnik pliku na końcu pliku. Jeśli plik nie istnieje to próbuje go utworzyć. 'a+' - Otwórz do odczytu i zapisu; ustawia wskaźnik pliku na końcu pliku. Jeśli plik nie istnieje to próbuje go utworzyć. $fi jest tzw. uchwytem pliku w nazwie pliku można używać http:// oraz ftp:// gdy się coś nie powiedzie $fi=false przydatna funkcja file_exists("nazwa") typu logicznego

PHP- obsługa plików (2) Po prawidłowym otwarciu można z plikiem pracować zapisać coś do pliku fputs($fi,"ten tekst trafi do pliku \n"); odczytać z pliku $linia=fgets($fi,100); # 100 znaków lub $znak=fgetc($fi); Przy tych operacjach znacznik pliku przesuwany jest o 1 do przodu plik należy zamknąć fclose($fi);

PHP- funkcje wbudowane Matematyczne - sin($x) obsługi stringów - ereg($wzorzec,$napis) - przeszukuje $napis z wykorzystaniem wyrażenia regularnego $wzorzec obsługi tablic - sort($tablica) - sortuje tablice od min do max obsługi sieci - mail($odbiorca,$temat,$wiadomosc, $d\odatkowe_nagłowki) graficzne - imagecreate($wysokosc,$szerokosc) - tworzy obrazek typu GIF obsługi plików - fopen($plik,$tryb) - otwiera plik i zwraca jego identyfikator obsługa dat i czasu - date($format) obsługi baz danych - mysql_connect($host,$user,$password) - otwiera połączenie z baza MySQL

przykład licznik w pliku tekstowym <?PHP $filename="/tmp/licznik"; # WSTAW TU SWOJA NAZWE $fp=fopen($filename,"r+"); $nr=fgets($fp,10); $nr++; fseek($fp,0); fwrite($fp,$nr,10); fclose($fp); echo "<h1> licznik = $nr </h1>";?>

przykład licznik i ciasteczko <? setcookie("licznik","1",time()+100);?> ustawia ciastko o nazwie licznik ważne 100 sekund <html> <body> <? @$odwiedzony = $_COOKIE['licznik']; //odczytanie wartości ciasteczka $filename=./licznik $plik = fopen($filename,"r"); $licz = fread($plik, 10); fclose($plik); if ($odwiedzony) { echo("jeste6 tu po raz ". $licz); } else { $licz++; echo("jeste6 tu po raz ". $licz); } $wczyt = fopen($filename,"w"); fwrite($wczyt,$licz); fclose($wczyt);?> </body> </html>

Połączenie PHP-MySQL (1) PHP zawiera wiele funkcji umożliwiających prace z bazą. Wymienię tylko kilka najczęściej używanych. INT mysql_connect( nazwa hosta, nazwa_użyt, hasło ); funcja zwraca identyfikator (numer) połączenia użycie: $link = mysql_connect("localhost", info", info") or die ("Nie można się połączyć"); połączenie zostaje zamknięte po użyciu funkcji: mysql_close(link);

Połączenie PHP-MySQL(2) Wybranie bazy: mysql_select_db ( moja_baza") or die ("Nie mozna wybrać bazy danych"); zapytanie SQL: $result = mysql_query ("SELECT * FROM adresy",$link) or die ("Zapytanie zakończone niepowodzeniem"); Nie trzeba podawac $link- wtedy domyślnie ostanio użyte połączenie $result jest identyfikatorem (int) zbioru wynikow przykład: $result = mysql_query ("SELECT * FROM adresy",$link); echo "w zbiorze jest ". mysql_num_rows($result). "rekordow" ;

Połączenie PHP-MySQL(3) mysql_fetch_array($result) - pobiera wiersz i zwraca go w postaci tabeli jeśli w zbiorze wyników nie ma już rekordów zwracane jest FALSE pozwala to używać konstrukcji: while ($osoba=mysql_fetch_array($result)){ echo $osoba["imie"]. $osoba["nazwisko"]. $osoba["adres"]. "<br>" ; }