Podstawy PHP. Wstęp. Zmienne

Wielkość: px
Rozpocząć pokaz od strony:

Download "Podstawy PHP. Wstęp. Zmienne"

Transkrypt

1 Podstawy PHP Wstęp 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 C/C++, lecz jest bardzo uproszczona programista PHP zazwyczaj nie musi przejmować się poprawnością typów zmiennych, przydzielaniem dla nich pamięci itp. Dodatkowo wbudowana obsługa wielu popularnych baz danych ułatwia twórcy operacje na tych bazach. Dzięki połączeniu z biblioteką GD możliwe jest także dynamiczne tworzenie obrazków GIF (starsze wersje GD) lub PNG (nowsze wersje). Aby plik był rozpoznany przez serwer WWW jako skrypt PHP musi on mieć odpowiednie rozszerzenie. Rozszerzenia te można zdefiniować w konfiguracji serwera WWW, ale zazwyczaj jest to.php3 (dla PHP w wersji 3),.php lub php4 (dla PHP w wersji 4) i.phtml (dla PHP w wersji starszej niż 3). Po nadaniu plikowi takiego rozszerzenia serwer będzie wiedział, że plik ten nie jest przeznaczony do bezpośredniego wyświetlenia (jak w przypadku plików HTML), ale że najpierw trzeba go przepuścić przez parser PHP. Jeśli zwykłemu plikowi HTML nadamy rozszerzenie.php, to zostanie on prawidłowo wyświetlony, mimo że nie jest to skrypt PHP. Dzieje się tak dlatego, że parser PHP przetwarzając stronę ma 2 tryby pracy: HTML, gdzie cała treść jest wyświetlana, bez przetwarzania, i PHP, gdzie treść jest traktowana jako skrypt do przetworzenia. Do określenia w pliku co jest kodem HTML a co PHP służą specjalne znaczniki. Początkowo parser jest w trybie HTML. Aby przejść do trybu PHP można użyć jednego z czterech znaczników: 1 <? echo ("to jest najprostsza metoda, podobna do SGML'a"); 2 echo("jeśli serwujesz pliki XML, użyj tej metody"); 3 <script language="php"> echo ("niektóre edytory (np. FrontPage) nie lubią przetwarzania instrukcji"); </script> 4 <% echo ("Możesz też użyć metody podobnej do tej z ASP"); %> <%= $variable; # To jest skrót dla "<% echo " %> Przykład 1. Wyświetlenie Hello Word : echo 'Hello World!'; Po wejściu na tę stronę z przeglądarki WWW w okienku powinno być widać tylko napis Hello World! (bez cudzysłowów). Jedna uwaga: polecenie echo nie wysyła znaku końca linii, więc jeśli chcesz, aby po ciągu znaków (albo w którymkolwiek miejscu tego ciągu) kończyła się linia, w tym miejscu trzeba wstawić \n. Parser PHP podczas wykonywania skryptu sprawdza jego poprawność. Jeśli coś się nie zgadza, zostaniemy o tym poinformowani. Skrypt będzie jednak wykonany do miejsca, w którym pojawił się błąd. Najczęściej są to błędy składniowe brak średnika na końcu linii, niedomkniętych nawiasach (bardzo częsty błąd przy złożonych instrukcjach warunkowych), cudzysłowach lub nawiasach klamrowych kończących blok danych (przy instrukcjach warunkowych, pętlach). Błędy przy braku zamykających nawiasów klamrowych łatwo można rozpoznać, ponieważ numer linii zawierającej błąd jest o jeden większa od liczby linii w pliku. Zmienne W języku PHP zmienne oznacza się za pomocą znaku dolara ( $ ) przed identyfikatorem. Obsługa zmiennych w PHP jest uproszczona do minimum. Zmienna jest inicjalizowana (to znaczy rezerwowany jest dla niej pewien obszar w pamięci) przy pierwszym jej użyciu. Nazwy zmiennych muszą zaczynać się od litery (dużej lub małej) lub underscore (dolna kreska _ ) a dalej mogą się składać z dowolnej ilości liter, cyfr i znaków o kodzie ASCII powyżej 127. Przy nazwach zmiennych

2 respektowana jest wielkość znaków zmienne $Test i $test to dwie różne zmienne. Oto przykład przypisywania wartości zmiennym i wykorzystanie ich w poleceniu echo. Przykład 2: $nazwa = 1; // Zmiennej "nazwa" przypisywana jest wartość liczbowa 1 $druga_nazwa = "Tekst"; /* Zmiennej "druga_nazwa" przypisany jest ciąg znaków "Tekst" */ $trzecia_nazwa = $nazwa; // Zmiennej "trzecia_nazwa" przypisywana echo "To jest $druga_nazwa"; // Powinien wyświetlić się napis "To jest Tekst" echo '$druga_nazwa'; // Powinien wyświetlić się napis "$druga_nazwa" echo $nazwa; // Powinna wyświetlić się cyfra 1 Parametr dla polecenia echo można podawać zarówno w cudzysłowach jak i apostrofach. Jednak te parametry nie są sobie równoznaczne. W przypadku cudzysłowów zmienne zawarte między nimi są zamieniane na ich wartość, a w przypadku apostrofów zmienna pozostaje swoją nazwą. Typy zmiennych: liczby całkowite (integer) liczby rzeczywiste (double) ciągi (string) tablice (array) obiekty (object) Dodatkowo PHP potrafi konwertować zmienne całkowite zapisane w różnych formatach liczbowych. Przykład 3 $blah = "0"; // $blah jest ciągiem (ASCII 48) $blah++; // $blah jest ciągiem "1" (ASCII 49) $blah += 1; // $blah jest teraz wartością całkowitą (2) $blah = $foo + 1.3; // $blah jest wartością rzeczywistą (1.3) $blah = 5 + "10 Malutkich Świnek"; // $blah jest wartością całkowitą (15) $blah = 5 + "10 Małych Świń"; // $blah jest wartością całkowitą (15) Przykład 4. Rzutowanie typów danych: $liczba_calkowita = 10; $liczba_rzeczywista = (real) $liczba_calkowita; (int), (integer) rzutuj do typu całkowitego (real), (double), (float) rzutuj do typu rzeczywistego (string) rzutuj do ciągu (array) rzutuj do tablicy (object) rzutuj do obiektu Drugim sposobem, trwałym, jest użycie funkcji settype. Funkcja ta pobiera 2 argumenty. Pierwszym jest nazwa zmiennej do ustalenia typu, a drugim ciąg określający nowy typ zmiennej. W każdym skrypcie PHP dostępne jest kilka zmiennych, których wartość jest ustalana na podstawie zmiennych środowiskowych serwera WWW. Dostępne są jak zwykłe zmienne ze znakiem dolara przed nazwą. GATEWAY_INTERFACE -Informacja o specyfikacji CGI używanej przez serwer, np. CGI/1.1. SERVER_NAME - Nazwa hosta serwera na którym skrypt jest uruchamiany. Jeśli skrypt pracuje na wirtualnym hoście, to zmienna przyjmie jako wartość nazwę wirtualnego hosta. SERVER_SOFTWARE - Ciąg identyfikujący serwera podawany przy odpowiadaniu na zapytania.

3 SERVER_PROTOCOL - Nazwa i numer wersji protokołu za pomocą którego wysłano zapytanie o stronę, np. HTTP/1.0 ; REQUEST_METHOD - Metoda zapytania użyta do uzyskania dostępu do strony, np. GET, HEAD, POST, PUT. QUERY_STRING - Ciąg zapytania (jeśli takowy istnieje) za pomocą którego połączono się ze stroną. DOCUMENT_ROOT - Katalog główny drzewa dokumentów spod którego skrypt jest wykonywany jest to ustawienie z pliku konfiguracyjnego serwera. HTTP_ACCEPT - Nagłówek z aktualnego zapytania, jeśli taki istnieje. HTTP_ACCEPT_CHARSET - Zawartość nagłówka Accept-Charset z aktualnego zapytania, jeśli taki istnieje, np. iso ,*,utf-8. HTTP_ENCODING - Zawartość nagłówka Accept-Encoding z aktualnego zapytania, jeśli taki istnieje, np. gzip. HTTP_ACCEPT_LANGUAGE - Zawartość nagłówka Accept-Language z aktualnego zapytania, jeśli taki istnieje, np. en. HTTP_CONNECTION - Zawartość nagłówka Connection z aktualnego zapytania, jeśli taki istnieje, np. Keep-Alive. HTTP_HOST - Zawartość nagłówka Host z aktualnego zapytania, jeśli taki istnieje. HTTP_REFERER - Adres strony (jeśli taka była), która wskazała przeglądarkę do tej strony. Wartość ta jest ustawiana przez przeglądarkę nie wszystkie to robią. HTTP_USER_AGENT - Zawartość nagłówka User-Agent z zapytania, jeśli taki istnieje. Jest to ciąg informujący o przeglądarce która została użyta do obejrzenia bieżącej strony, np. Mozilla/4.5 [en] (X11; U; Linux i586). Można użyć funkcji get_browser() aby dopasować funkcjonalność strony do przeglądarki użytkownika. REMOTE_ADDR - Adres IP z którego użytkownik połączył się z serwerem. REMOTE_PORT - Port używany do komunikacji pomiędzy użytkownikiem a serwerem. SCRIPT_FILENAME - Ścieżka do aktualnie wykonywanego skryptu. SERVER_ADMIN - Wartość podana dla opcji SERVER_ADMIN w konfiguracji serwera WWW. Jeśli skrypt działa na wirtualnym serwerze, to będzie to wartość podana dla tego wirtualnego serwera. SERVER_PORT - Port na serwerze którego użyto do połączenia. Dla normalnych połączeń będzie to 80. SERVER_SIGNATURE - Ciąg zawierający wersję i nazwę wirtualnego hosta który jest dodawany do stron generowanych przez serwer. SCRIPT_NAME - Zawiera ścieżkę do aktualnie wykonywanego pliku. Jest to przydatne do skyptów, które muszą wskazywać samego siebie. REQUEST_URI - URI który został podany aby uzyskać dostęp do tej strony. Zmienne ustawiane przez PHP Argv - Tablica argumentów przkazywanych do skryptu. Jeśli skrypt jest uruchamiany z linii poleceń, to zmienna ta daję dostęp do argumentów w stylu języka C. Jeśli jest wywołany przez metodę GET, to zmienna ta zawierać będzie ciąg parametrów (query string). Argc - Zawiera liczbę parametrów podanych podanych do skryptu w linii poleceń (jeśli skrypt został wywołany z linii poleceń). PHP_SELF - Nazwa pliku aktualnie wykonywanego skryptu, względna do katalogu głównego dokumentów. Ta zmienna jest niedostępna jeśli PHP jest uruchamiany z linii poleceń. HTTP_COOKIE_VARS - Tablica asocjacjna zmiennych przekazanych do skryptu przez HTTP cookies. Dostępna tylko jeśli włączone zostało śledzenie zmiennych przez ustawienie w konfiguracji PHP opcji track_vars lub komendą _track_vars.

4 HTTP_GET_VARS - Tablica asocjacjna zmiennych przekazanych do skryptu przez metodę GET. Dostępna tylko jeśli włączone zostało śledzenie zmiennych przez ustawienie w konfiguracji PHP opcji track_vars lub komendą _track_vars. HTTP_POST_VARS - Tablica asocjacjna zmiennych przekazanych do skryptu przez metodę POST. Dostępna tylko jeśli włączone zostało śledzenie zmiennych przez ustawienie w konfiguracji PHP opcji track_vars lub komendą _track_vars. Przykład 5. Definiowanie stałych: define("stala", "Hello world."); echo STALA; // Wyświetla "Hello world." Operatory Operacja przypisania: Przykład Nazwa Wynik $a + $b Dodawanie Suma $a i $b. $a $b Odejmowanie Różnica $a i $b. $a * $b Mnożenie Iloczyn $a i $b. $a / $b Dzielenie Iloraz $a i $b (bez reszty). $a % $b Modulo Reszta z dzielenia $a przez $b. $nazwa = $inna_nazwa = $trzecia_nazwa = 5; Operacje bitowe Przykład Wynik $a += 2 Do zmiennej $a dodane zostanie 2 $a -= 2 Od zmiennej $a odjęte zostanie 2 $a *= 2 Zmienna $a zostanie pomnożona przez 2 $a /= 2 Zmienna $a dodane podzielona przez 2 $a %= 2 Zmienna $a przyjmie wartość reszty z dzielenia $a przez 2 $a.= dalszy ciąg Do zmiennej $a na końcu dodany zostanie ciąg dalszy ciąg Przykład Nazwa Wynik $a & $b AND Ustawiane są bity które są ustawione w obu zmiennych. $a $b OR Ustawiane są bity, które są ustawione w jednej lub drugiej zmiennej. $a ^ $b XOR Ustawiane są bity, które są ustawione w jednej lub drugiej zmiennej, ale nie w obu. ~ $a NOT Inwerter ustawiane są bity które nie są ustawione w zmiennej $a i odwrotnie. $a << $b Przesunięcie w lewo Przesuń bity z $a $b-razy w lewo (każdy krok oznacza pomnożenie przez 2) $a >> $b Przesunięcie w prawo Operatory porównania Przesuń bity z $a $b-razy w prawo (każdy krok oznacza podzielenie przez 2) Przykład Nazwa Wynik $a == $b Równy Prawda jeśli $a jest równe $b. $a === Identyczny Prawda jeśli $a jest równe $b i są tego samego typu. (tylko PHP4)

5 $b $a!= $b Nie równe Prawda jeśli $a nie jest równe $b. $a!== $b Nie identyczny Prawda jeśli $a nie jest równe $b lub nie są tego samego typu. (tylko PHP4) $a < $b Mniejsze Prawda jeśli $a jest mniejsze niż $b. $a > $b Większe Prawda jeśli $a jest większe niż $b. $a <= $b Mniejsze lub Prawda jeśli $a jest mniejsze lub równe $b. równe $a >= $b Większe lub równe Prawda jeśli $a jest większe lub równe $b. Operator kontroli błedów Operator kontroli błędów ) powoduje, że wyrażenie przed którym postawiono ten znak nie spowoduje wyświetlenia się jakiegokolwiek błędu lub ostrzeżenia. Przykład 6: /* Jeden z najczęstszych błędów SQL (za dużo o jeden apostrof) */ $res ("select nazwa, kod from 'lista") or die ("Zapytanie się nie powiodło: błąd to '$php_errormsg'"); Inkrementacja i dekrementacja: Operatory logiczne Przykład Nazwa Wynik ++$a Preinkrementacja Zwiększa $a o jeden, a następnie zwraca $a. $a++ Postinkrementacja Zwraca $a, a następnie zwiększa $a o jeden. $a Predekrementacja Zmniejsza $a o jeden, po czym zwraca $a. $a Postdekrementacja Zwraca $a, po czym zmniejsza $a o jeden. Przykład Nazwa Wynik $a && $b AND Prawda, jeśli $a i $b są prawdą $a $b OR Prawda, jeśli $a lub $b są prawdą! $a NOT Prawda, jeśli $a nie jest prawdą Operator ciągu (. kropka) służy do łączenia kilku ciągów w jedną całość. Przykład 7: $zmienna1 = "Wartość zmiennej 'zmienna2' to"; $zmienna2 = 5; echo $zmienna1." ".$zmienna2; Instrukcje Instrukcja Składnia Przykład Instrukcja warunkowa IF if(wyrażenie_warunkowe) instrukcja wykonywana jeśli spełniony zostanie warunek elseif(inne_wyrażenie_warunk owe) instrukcja wykonywana jeśli spełniony zostanie drugi warunek, a pierwszy nie else instrukcja wykonywana jeśli nie zostanie spełniony $a = 2; $b = 5; $c = 1; if($a > $b) echo "$a jest większe od $b"; elseif ($b > $c) echo "$b jest większe od $c"; else echo "$c jest większe od $a i $b"; if($a)

6 Pętla FOR Pętla WHILE Pętla DO WHILE SWITCH żaden z warunków for( inicjalizacja zmiennych ; sprawdzenie warunku ; modyfikacja zmiennych) blok wyrażeń for( $x = 1; $x <= 10; $x++ ) echo $x."<br>"; do instrukcje while( warunek ); switch($zmienna) case 'wartość1': instrukcje case 'wartość2': instrukcje default: instrukcje echo "Zmienna $a ma wartość większą od zera"; for( $x = 1; $x <= 10; $x++ ) echo $x."<br>"; $x=1; while($x <= 10) echo $x."<br>"; $x++; $x=1; do echo $x."<br>"; $x++; while($x <= 10); $i = 3; switch($i) case 0: case 1: case 2: case 3: echo "Zmienna $i jest mniejsza bądź równa od trzech\n"; case 4: echo "Zmienna $i jest równa cztery\n"; default: echo "Zmienna $i jest większa od czterech\n"; Przerwanie pętli Przykład 11: for($x = 1; $x<=100; $x++) if($x % 2!= 0) continue; //tu przerywamy I przechodzimy to następnego kroku pętli echo $x." "; Przykład 12: for($x = 0; $x<10; $x++) if($x%2==0) echo $x." "; if($nazwa == "Test1") //całkowite wyjście z pętli

7 Przekazywanie danych między stronami Formularze Jeśli użytkownik musi podać jakieś dane (np. w celu dodania ich do bazy danych), to jedyną metodą jest pobranie ich ze standardowego formularza HTML. W większości języków programowania należy używać dodatkowych bibliotek aby uzyskać dostęp do danych przesyłanych z formularza. W PHP zostało to maksymalnie uproszczone. Wszystkie dane z formularza trafiają do odpowiednich tablic asocjacyjnych o nazwach kluczy takich, jak nazwy pól formularza. Jeśli w konfiguracji PHP włączona zostanie opcja register_globals (jest ona domyślnie wyłączona od wersji 4.2.0), to stworzone zostaną od razu zmienne o nazwach takich jak nazwy pól formularza. Są dwie metody przekazywania parametrów do innych stron: metoda GET i metoda POST. Metody GET używa się kiedy parametrów jest niewiele. Dzieje się tak ponieważ parametry przekazuje się za pomocą adresu URL (np. którego długość jest ograniczona. Należy też pamiętać że parametry są widoczne w pasku adresu przeglądarki, więc tej metody nie należy używać jeśli przekazywane są np. hasła. Metoda POST do przekazywania parametrów wykorzystuje nagłówek zapytania wystarczy wiedzieć, że metoda ta umożliwia przekazywanie dużo większych parametrów, a także że parametrów nie widać w pasku przeglądarki. Dane przesłane metodą GET trafiają do tablicy $_GET (lub $HTTP_GET_VARS w wersjach starszych niż 4.1.0) a dane z metody POST to tablicy $_POST (lub $HTTP_POST_VARS). Tablice $_GET i $_POST są superglobalne. Oznacza to, że są widoczne w każdym miejscu kodu PHP bez konieczności użycia składni globals. Przykład 13 Plik jeden.html <html> <head> <title> Test formularza </title> </head> <body> <form action="dwa.php" method="get"> Imię: <input type=text name="imie"/><br/> Nazwisko: <input type=text name="nazwisko"/><br/> Proszę o fakturę do zamówienia: <input type=checkbox name="faktura"/><br/> Chcę zamówić:<br/> <input type=radio name=zamow value="kola"/>coca-colę<br> <input type=radio name=zamow value="fanta"/>fantę<br> <input type=radio name=zamow value="sprite"/>sprite'a<br> <input type=submit value="wyślij"/> </form> </body> </html> Plik dwa.php <html> <head> <title> Wyniki </title> </head> <body> Imię: echo $_GET['imie']<br>

8 Nazwisko: echo $_GET['nazwisko']<br> Faktura: echo ($_GET['faktura'] == 'on'? 'Tak' : 'Nie')<br> Zamówienie: switch($_get['zamow']) case "kola": echo "Coca-cola"; case "fanta": echo "Fanta"; case "sprite": echo "Sprite"; </body> </html> Ładowanie plików Często zachodzi też potrzeba przekazania jakiegoś pliku na serwer, na przykład dodając zdjęcie do galerii. Plik przesyła się korzystając z pola formularza typu file. Należy pamiętać o tym, że w tagu otwierającym formularz musi znaleźć się parametr ENCTYPE= multipart/form-data a formularz musi być wysyłany metodą POST. Na stronie do której został wysłany formularz dostępna będzie wielowymiarowa tablica asocjacyjna $_FILES ($HTTP_POST_FILES w starszych wersjach PHP), której pierwszym wymiarem będą pola typu file z formularza (klucze są nazwami tych pól), a w drugim informacje o przesłanym pliku. Informacje o przesłanym pliku: tmp_name - nazwa tego pliku na serwerze wraz ze ścieżką; używając tego pola można uzyskać dostęp do przesłanego pliku name - nazwa pliku jaką posiadał u użytkownika type - typ MIME pliku, np. text/plain lub image/gif; informacja ta jest dostępna tylko jeśli przeglądarka klienta dostarczyła takiej informacji. size - wielkość pliku w bajtach Przykład 14: plik1.html: <html> <body> <form action="plik2.php" method="post" ENCTYPE="multipart/form-data"> <input type="file" name="plik"/><br/> <input type="submit" value="wyślij plik"/> </form> </body> </html> plik2.php: $max_rozmiar = 1024*1024; if (is_uploaded_file($_files['plik']['tmp_name'])) if ($_FILES['plik']['size'] > $max_rozmiar) echo 'Błąd! Plik jest za duży!'; else echo 'Odebrano plik. Początkowa nazwa: '.$_FILES['plik']['name']; echo '<br/>'; if (isset($_files['plik']['type'])) echo 'Typ: '.$_FILES['plik']['type'].'<br/>'; move_uploaded_file($_files['plik']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].'/foto/'.$_FILES['plik']['name']);

9 else echo 'Błąd przy przesyłaniu danych!'; Odnośniki Istnieje możliwość przekazywania niedużej liczby parametrów za pomocą zwykłych odnośników dostępnych w języku HTML. W takim przypadku wykorzystuje się metodę GET: <a href= strona.php?imie=franek&nazwisko=kowalski >Kliknij tu</a> Tablice Tablice są bardzo specyficznym typem zmiennych są to, najprościej mówiąc, zmienne zawierające w sobie uporządkowany zbiór zmiennych. Do zmiennych tych uzyskuje się dostęp przez liczbę w nawiasie kwadratowym podane bezpośrednio po nazwie zmiennej tablicy. Liczba ta to tak zwany indeks numer kolejny zmiennej w tablicy. Tak samo przypisuje się wartość do tablicy. Przykład 15: $tablica[0] = "Wpis numer 0"; $tablice[1] = "Wpis numer 1"; $tablica[2] = "Wpis numer 2"; echo $tablica[2]; // Wyświetlony zostanie napis "Wpis numer 2"; Aby po prostu dodać kolejny wpis na końcu tabeli wystarczy przy przypisywaniu wartości nie wpisywać indeksu do nawiasów kwadratowych. Jeśli w ten sposób dodawane są wpisy do nowej tablicy, to pierwszy wpis ma indeks 0. Indeks można też podawać ze zmiennej, z innej tablicy czy funkcji z dowolnego wyrażenia zwracającego wartość. Przykład 16: $tab1[] = 1; $tab1[] = 0; $tab1[] = 3; $tab1[] = 2; $tab2[] = "Pierwszy"; $tab2[] = "Drugi"; $tab2[] = "Trzeci"; $tab2[] = "Czwarty"; echo $tab2[$tab1[2]]; Tablice asocjacyjne W PHP występuje też inny rodzaj tablic, tak zwane tablice asocjacyjne (zwane też czasem haszami hash table). Są to tablice, w których zamiast indeksów liczbowych używa się identyfikatorów znakowych (kluczy): Przykład 17: $tablica["imie"] = "Jan"; $tablica["nazwisko"] = "Kowalski"; $tablica["adres"] = "Polna 1"; echo $tablica["imie"]." ".$tablica["nazwisko"].", ul. ".$tablica["adres"]."n"; Przeglądanie tablicy gdy nie znamy jest wielkości (liczby elementów) wtedy można skorzystać z funkcji count( $nazwa_tablicy ). Zwraca ona ilość elementów w tablicy podanej jako parametr. Przykład 18:

10 $tbl[] = 1; $tbl[] = 2; $tbl[] = 3; $tbl[] = 4; $tbl[] = 5; for( $x = 0, $cnt = count($tbl); $x < $cnt; $x++ ) echo $tbl[$x]; Przeglądanie tablicy asocjacyjnej. Przykład 19: $tablica["imie"] = "Jan"; $tablica["nazwisko"] = "Kowalski"; $tablica["adres"] = "Polna 1"; while( list($klucz, $wartosc) = each($tablica) ) echo "$klucz => $wartosc<br>"; Sortowanie tablic PHP ofertuje cały zestaw funkcji służących do sortowania tablic. Są to: asort() - sortuje tablice asocjacyjne zachowując przypisanie kluczy do wartości arsort() - sortuje w odwrotnej kolejności tablice asocjacyjne zachowując przypisanie kluczy do wartości. Funkcja prawie identyczna jak poprzednia, tyle że dane sortowane są od tyłu ksort() - sortuje tablice asocjacyjne według kluczy. rsort() - sortuje zwykłe tablice (nie asocjacyjne) w odwróconej kolejności sort() - sortuje zwykłe tablice (nie asocjacyjne) w kolejności alfabetycznej uasort() - funkcja sortująca tablice asocjacyjne za pomocą zdefiniowanej przez użytkownika funkcji porównującej elementy (nazwa funkcji jest podawana za pomocą drugiego parametru) usort() - funkcja sortująca zwykłe tablice za pomocą funkcji zdefiniowanej przez użytkownika uksort() - funkcja sortująca tablice asocjacyjne według klucza za pomocą funkcji zdefiniowanej przez użytkownika. Tworzenie ciągów z tablic i odwrotnie Przykład 20 (wykorzystanie średnika jako rozdzielenia danych): $dane = "12/11/2000;19:23:33;Netscape Navigator; "; $tablica = explode(";", $dane); Jest także rozszerzona wersja funkcji explode: split(). Różni się ona tym, że zamiast prostego ciągu znaków rozdzielających pola, akceptuje ona wyrażenia regularne. Przykład 21 (operacja odwrotna tworzenie ciągu z tablicy) $dane = implode(";", $tablica); Funkcje Funkcja jest kawałkiem kodu, który można wywołać podając jej nazwę. Już wcześniej podane zostało kilka funkcji dostarczanych przez PHP, takich jak array(), each(), list(), explode() czy implode(). Jak można zauważyć, funkcje rozpoznaje się po nawiasach występujących po ich nazwie. W nawiasach tych (jeśli funkcja tego wymaga) podaje się parametry dla danej funkcji. Niektóre funkcje zwracają jakąś wartość, a więc wywołanie takiej funkcji można wstawić jak dowolne inne wyrażenie do listy parametrów innej funkcji czy np. do obliczenia.

11 Przykład 22 (własna funkcja obliczająca sumę) function suma($parametr1 = 0, $parametr2 = 0) $wartosc = $parametr1 + $parametr2; return $wartosc; Klasy Przykład 23 (klasa koszyk) // Początek definicji klasy Koszyk - definiującej koszyk sklepowy class Koszyk // Definicja zmiennej - tablicy asocjacyjnej zawierającej numery artykułów i // ich ilość var $artykuly; // Metoda dodająca podaną ilość artykułów do koszyka function dodaj($numer, $ilosc) $this->artykuly["$numer"] += $ilosc; // Metoda usuwająca podaną ilość artykułów z koszyka function usun($numer, $ilosc) if($this->artykuly["$numer"]>$ilosc) $this->artykuly["$numer"]-=$ilosc; else $this->artykuly["$numer"]=0; // Metoda wyświetlająca zawartość koszyka function wyswietl() while(list($k, $v) = each($this->artykuly)) if($v>0) echo "Artykul nr $k - $v sztuk<br>"; // Przykład wykorzystania $koszyk = new Koszyk; $koszyk->dodaj('20', 2); $koszyk->dodaj('12', 4); $koszyk->dodaj('20', 5); $koszyk->usun('12', 4); $koszyk->wyswietl(); Dziedziczenie Przykład 24 class Nazwany_koszyk extends Koszyk var $nazwa; function ustaw_nazwe($nowa_nazwa) $this->nazwa = $nowa_nazwa; $koszyk = new Nazwany_koszyk; $koszyk->ustaw_nazwe('fredzio'); $koszyk->dodaj('2', 34); echo 'Właściciel: '.$koszyk->nazwa.'<br/>'; $koszyk->wyswietl();

12 Zastosowanie konstruktora klasy: <? class Auto_koszyk extends Nazwany_koszyki function Auto_koszyk( $nazwa = 'Anonim') $this->ustaw_nazwe($nazwa); $koszyk = new Auto_koszyk('Jakiś właściciel'); $koszyk->dodaj('4', 30); echo 'Właściciel: '.$koszyk->nazwa.'<br/>'; $koszyk->wyswietl(); Include i require W PHP istnieją dwie instrukcje, które pozwalają włączyć do kodu zawartość innego pliku także zawierającego kod PHP. Obu tym instrukcjom podaje się jeden parametr nazwę pliku do włączenia do kodu (może to być ścieżka do pliku znajdującego się na innym serwerze WWW). Różnica między nimi polega na sposobie włączania tych plików do kodu. W przypadku instrukcji require pliki dołączane są do kodu jeszcze przed parsowaniem, w każdym miejscu gdzie znajduje się instrukcja require. Dlatego instrukcja ta nie nadaje się do dołączania plików których nazwa pobierana jest ze zmiennej zamiast tego należy użyć instrukcji include. Używając tych instrukcji należy pamiętać o dwóch rzeczach. Po pierwsze, przetwarzanie plików zaincludowanych zaczyna się od trybu HTML, a więc jeśli plik zawiera tylko kod PHP, to powinien zaczynać się od jednego ze znaczników otwierających. Po drugie należy pamiętać, że jeśli instrukcja include używana jest w pętli lub instrukcji warunkowej, to pomimo że jest to teoretycznie jedna linia, to musi znajdować się ona w nawiasach klamrowych, ponieważ ta pojedyncza linia zamieniana jest na wiele linii dołączanych z innego pliku. Funkcja readfile() Innym typem funkcji służącej do dołączania treści zawartych w innym pliku jest funkcja readfile(). Rzeczą odróżniającą tą funkcję od instrukcji zawartych w poprzednim punkcie jest to, że dane pobrane z pliku nie są przetwarzane przez PHP, więc funkcja ta nadaje się tylko do wyświetlania plików HTML bądź czysto tekstowych.

Lekcja 7 Tablice. Definiowanie tablicy

Lekcja 7 Tablice. Definiowanie tablicy Paweł Gmys PHP lekcja 7 strona 1 Lekcja 7 Tablice Definiowanie tablicy Tablice są bardzo specyficznym typem zmiennych - są to, najprościej mówiąc, zmienne zawierające w sobie uporządkowany zbiór zmiennych.

Bardziej szczegółowo

PHP. PHP: Hypertext Preprocessor. mgr inż. Remigiusz Pokrzywiński

PHP. PHP: Hypertext Preprocessor. mgr inż. Remigiusz Pokrzywiński PHP PHP: Hypertext Preprocessor mgr inż. Remigiusz Pokrzywiński Czym jest PHP PHP to obiektowy język programowania wykonywany po stronie serwera. Skrypty zagnieżdżane są zwykle w dokumencie HTML lub XHTML

Bardziej szczegółowo

Umieszczanie kodu. kod skryptu

Umieszczanie kodu. kod skryptu PHP Definicja 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 C/C++, lecz jest bardzo uproszczona

Bardziej szczegółowo

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

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice. Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice. Język PHP Język interpretowalny, a nie kompilowany Powstał w celu programowania

Bardziej szczegółowo

Sieci komputerowe i bazy danych. Wykład nr 5 PHP. Wprowadzenie

Sieci komputerowe i bazy danych. Wykład nr 5 PHP. Wprowadzenie Sieci komputerowe i bazy danych Wykład nr 5 PHP Wprowadzenie Informacje podstawowe Twórca: Razmus Lerdorf oficjalna nazwa PHP: Hypertext Preprocessor, język skryptowy osadzany w dokumentach HTML działa

Bardziej szczegółowo

PHP: bloki kodu, tablice, obiekty i formularze

PHP: bloki kodu, tablice, obiekty i formularze 1 PHP: bloki kodu, tablice, obiekty i formularze SYSTEMY SIECIOWE Michał Simiński 2 Bloki kodu Blok if-else Switch Pętle Funkcje Blok if-else 3 W PHP blok if i blok if-else wyglądają tak samo i funkcjonują

Bardziej szczegółowo

Elementem tablicy może być każdy typ zmiennej (z innymi tablicami i obiektami włącznie). Tablica dwuwymiarowa, zawiera dwa indeksy, np.

Elementem tablicy może być każdy typ zmiennej (z innymi tablicami i obiektami włącznie). Tablica dwuwymiarowa, zawiera dwa indeksy, np. Systemy teleinformatyczne Ćwiczenie 6 - PHP (2) - Tablice w PHP Tablice są typem zmiennych zawierającym uporządkowany zbiór danych. Pełnią ważną rolę w aplikacjach internetowych z bazą danych służą do

Bardziej szczegółowo

Serwer WWW Apache. http://httpd.apache.org/ Plik konfiguracyjny httpd.conf Definiujemy m.in.: Aktualne wersje 2.4.6, 2.2.25, 2.0.65 zakończony projekt

Serwer WWW Apache. http://httpd.apache.org/ Plik konfiguracyjny httpd.conf Definiujemy m.in.: Aktualne wersje 2.4.6, 2.2.25, 2.0.65 zakończony projekt Serwer WWW Apache http://httpd.apache.org/ Plik konfiguracyjny httpd.conf Definiujemy m.in.: Katalog który ma być serwowany Moduły, które mają zostać uruchomione na serwerze m.in. PHP, mod_rewrite Wirtualne

Bardziej szczegółowo

APLIKACJE INTERNETOWE 5 PHP W P R O W A D Z E N I E D O P R O G R A M O W A N I A

APLIKACJE INTERNETOWE 5 PHP W P R O W A D Z E N I E D O P R O G R A M O W A N I A APLIKACJE INTERNETOWE 5 PHP W P R O W A D Z E N I E D O P R O G R A M O W A N I A PLAN PREZENTACJI Absolutne podstawy PHP w HTML-u Pierwszy skrypt Błędy Kończenie instrukcji Komentarze Zmienne Podstawy

Bardziej szczegółowo

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

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science Systemy internetowe Wykład 3 PHP PHP - cechy PHP (Hypertext Preprocessor) bardzo łatwy do opanowania, prosta składnia, obsługuje wymianę danych z różnymi systemami baz danych pozwala na dynamiczne generowanie

Bardziej szczegółowo

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

Lekcja 1. Składnia języka zmienne i podstawowe instrukcje PHP. Do wyświetlania tekstu służy instrukcja echo echo Hello world ; Do wyświetlania tekstu służy instrukcja echo echo Hello world ; PHP język ze słabą kontrolą typów. W języku php w przeciwieństwie do c++ nie musimy podawać typu zmiennej podczas jej deklaracji. Tworzenie

Bardziej szczegółowo

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

Należy ściągnąć oprogramowanie Apache na platformę Programowanie Internetowe Język PHP - wprowadzenie 1. Instalacja Oracle+Apache+PHP Instalacja Apache, PHP, Oracle Programy i ich lokalizacja Oracle Database 10g Express Edition10.2 http://www.oracle.com/technology/products/database/

Bardziej szczegółowo

http://webmade.org/kursy-online/kurs-php.php Co to jest PHP

http://webmade.org/kursy-online/kurs-php.php Co to jest PHP http://webmade.org/kursy-online/kurs-php.php Co to jest PHP 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

Bardziej szczegółowo

SSK - Techniki Internetowe

SSK - Techniki Internetowe SSK - Techniki Internetowe Ćwiczenie 2. Obsługa formularzy. Operatory, instrukcje warunkowe oraz instrukcje pętli w PHP. Obsługa formularzy Skryptu PHP moŝna uŝyć do obsługi formularza HTML. Aby tego dokonać,

Bardziej szczegółowo

Systemy internetowe Wykład 3 PHP

Systemy internetowe Wykład 3 PHP Systemy internetowe Wykład 3 PHP PHP - cechy PHP (Hypertext Preprocessor) bardzo łatwy do opanowania, prosta składnia, obsługuje wymianę danych z różnymi systemami baz danych pozwala na dynamiczne generowanie

Bardziej szczegółowo

Programowanie PHP. Temat 1. Przygotowanie środowiska, prezentacja możliwości PHP

Programowanie PHP. Temat 1. Przygotowanie środowiska, prezentacja możliwości PHP Programowanie PHP Materiały: 1. PHP5, Apache i MySQL. Od podstaw, Helion 2005 2. PHP5. Tworzenie stron WWW. Ćwiczenia praktyczne, Helion 2004 3. PHP w mgnieniu oka, Helion 2005 4. http://www.leon.w-wa.pl/texts/kurs/index.php

Bardziej szczegółowo

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych Szkolenie przeznaczone jest dla osób chcących poszerzyć swoje umiejętności o tworzenie rozwiązań internetowych w PHP. Zajęcia zostały przygotowane w taki sposób, aby po ich ukończeniu można było rozpocząć

Bardziej szczegółowo

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

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty) Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty) // to jest pojedynczy komentarz (1-linijkowy) to jest wielolinijkowy komentarz Budowa "czystego" skryptu PHP (tak

Bardziej szczegółowo

Michał Bielecki, KNI 'BIOS'

Michał Bielecki, KNI 'BIOS' Michał Bielecki, KNI 'BIOS' PHP czyli język typu client side 1. przeglądarka www żąda dokumentu o rozszerzeniu.php 2. serwer odbiera żądanie i przesyła do parsera php 3. parser php znajduje żądany plik

Bardziej szczegółowo

echo $tablica[2]; // Wyświetlony zostanie napis "Wpis numer 2";

echo $tablica[2]; // Wyświetlony zostanie napis Wpis numer 2; 4. Tablice Tablice są bardzo specyficznym typem zmiennych są to, najprościej mówiąc, zmienne zawierające w sobie uporządkowany zbiór zmiennych. Do zmiennych tych uzyskuje się dostęp przez liczbę w nawiasie

Bardziej szczegółowo

Podstawy JavaScript ćwiczenia

Podstawy JavaScript ćwiczenia Podstawy JavaScript ćwiczenia Kontekst:

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Obiektowe bazy danych

Obiektowe bazy danych Obiektowe bazy danych Wykład 7 Paweł Gmys Interfejs uŝytkownika C++ JAVA PERL PHP 2006-05-14 Paweł Gmys wykład 8 2 Czym są skrypty PHP? Programy umieszczane w treści stron WWW. Wykonywane przez serwer

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Język PHP Paweł Witkowski Wydział Matematyki, Informatyki i Mechaniki Jesień 2011 P. Witkowski (Wydział Matematyki, Informatyki i Mechaniki) BDiUS w. VIII Jesień 2011 1 /

Bardziej szczegółowo

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

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 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 obrębie skryptu. Wyrażenia include() i require() są niemal

Bardziej szczegółowo

Komunikacja między klientem, a skryptem PHP, oraz operacje na plikach

Komunikacja między klientem, a skryptem PHP, oraz operacje na plikach Komunikacja między klientem, a skryptem PHP, oraz operacje na plikach Zasady tworzenia stron w PHP z jednym plikiem głównym Aplikacje oraz strony WWW bardzo często tworzy się tak, że do jednego dokumentu

Bardziej szczegółowo

ZMIENNE. Podstawy PHP

ZMIENNE. Podstawy PHP ZMIENNE Podstawy PHP zmienna - to obiekt w programowaniu, który przechowuje różnego rodzaju dane niezbędne do działania programu. Zmienna podczas działania programu może zmieniad swoje wartości (jak wskazuje

Bardziej szczegółowo

Stałe definiuje się używając funkcji define. Przykład: define( PODATEK, 22); define( INSTALACJAOS, 70); define( MS, Microsoft );

Stałe definiuje się używając funkcji define. Przykład: define( PODATEK, 22); define( INSTALACJAOS, 70); define( MS, Microsoft ); Stałe definiuje się używając funkcji define. Przykład: define( PODATEK, 22); define( INSTALACJAOS, 70); define( MS, Microsoft ); Dobrą praktyką jest używanie wielkich liter jako nazw stałych. Nie jest

Bardziej szczegółowo

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

Podstawy programowania skrót z wykładów: Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace

Bardziej szczegółowo

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

Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki Programowanie w Sieci Internet Blok 2 - PHP Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić Podstawy podstaw, czyli małe wprowadzenie do PHP, Podstawy

Bardziej szczegółowo

Oczywiście plik musi mieć rozszerzenie *.php

Oczywiście plik musi mieć rozszerzenie *.php Oczywiście plik musi mieć rozszerzenie *.php Znaczniki PHP komunikują serwerowi gdzie rozpoczyna się i kończy kod PHP. Tekst między nimi jest interpretowany jako kod PHP, natomiast poza nimi jako kod HTML.

Bardziej szczegółowo

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

Dynamiczne przetwarzanie stron. dr Beata Kuźmińska-Sołśnia Dynamiczne przetwarzanie stron dr Beata Kuźmińska-Sołśnia KLIENT Witaj INTERNET SERWER Plik HTML Witaj wyświetlanie przez przeglądarkę Witaj! Serwer WWW komputer

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Wykład 03 JavaScript. Michał Drabik

Wykład 03 JavaScript. Michał Drabik Wykład 03 JavaScript Michał Drabik Język programowania wykorzystywany na stronach internetowych głównie w celu umożliwienia interakcji z użytkownikiem. Kod JavaScript może być umieszczany w kodzie XHTML

Bardziej szczegółowo

Część 4 życie programu

Część 4 życie programu 1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część

Bardziej szczegółowo

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

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre) Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie

Bardziej szczegółowo

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

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi 1 Rozdział 1 Wprowadzenie do PHP i MySQL Opis: W tym rozdziale kursanci poznają szczegółową charakterystykę

Bardziej szczegółowo

Ogólny schemat prostego formularza: A może lepiej zamiast przycisku opartego o input tak:

Ogólny schemat prostego formularza: A może lepiej zamiast przycisku opartego o input tak: Ogólny schemat prostego formularza: A może lepiej zamiast przycisku opartego o input tak: accept - typy zawartości MIME akceptowane przez serwer (opcjonalny) accept-charset - zestaw znaków akceptowanych

Bardziej szczegółowo

Instrukcje dołączania plików

Instrukcje dołączania plików Instrukcje dołączania plików W języku PHP dostępne są dwie instrukcje pozwalające na włączeniu do kodu skryptu zawartości innego pliku zawierającego kod PHP. Instrukcje include() oraz require( ) przyjmują

Bardziej szczegółowo

Pawel@Kasprowski.pl Języki skryptowe - PHP. Podstawy PHP. Paweł Kasprowski. pawel@kasprowski.pl. vl07

Pawel@Kasprowski.pl Języki skryptowe - PHP. Podstawy PHP. Paweł Kasprowski. pawel@kasprowski.pl. vl07 Podstawy PHP Paweł Kasprowski pawel@kasprowski.pl Historia PHP 1995 Personal Home Page Rasmus Lerdorf, prosty jęsyk oparty na Perlu 1998 PHP3 Andi Gutmans, Zeev Suraski modularność i rozszerzenia (extensions)

Bardziej szczegółowo

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

Pawel@Kasprowski.pl Języki skryptowe - PHP. PHP i bazy danych. Paweł Kasprowski. pawel@kasprowski.pl. vl07 PHP i bazy danych Paweł Kasprowski pawel@kasprowski.pl Użycie baz danych Bazy danych używane są w 90% aplikacji PHP Najczęściej jest to MySQL Funkcje dotyczące baz danych używają języka SQL Przydaje się

Bardziej szczegółowo

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

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy

Bardziej szczegółowo

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar) Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Rodzaje zawartości Zawartość statyczna Treść statyczna (np. nagłówek, stopka) Layout, pliki multimedialne, obrazki, elementy typograficzne,

Bardziej szczegółowo

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

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych 1. Wstawianie skryptu na stroną: Laboratorium 1 Do umieszczenia skryptów na stronie służy znacznik: //dla HTML5 ...instrukcje skryptu //dla HTML4 ...instrukcje

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Programowanie internetowe

Programowanie internetowe Programowanie internetowe Wykład 3 wprowadzenie do PHP mgr inż. Michał Wojtera email: mwojtera@dmcs.pl Formularze i ich używanie

Bardziej szczegółowo

I - Microsoft Visual Studio C++

I - Microsoft Visual Studio C++ I - Microsoft Visual Studio C++ 1. Nowy projekt z Menu wybieramy File -> New -> Projekt -> Win32 Console Application w okienku Name: podajemy nazwę projektu w polu Location: wybieramy miejsce zapisu i

Bardziej szczegółowo

Zajęcia 4 - Wprowadzenie do Javascript

Zajęcia 4 - Wprowadzenie do Javascript Zajęcia 4 - Wprowadzenie do Javascript Co to jest Javascript Javascript jest językiem skryptowym pozwalającym na dołączanie dodatkowej funkcjonalności do stron WWW. Jest ona najczęściej związana z modyfikacją

Bardziej szczegółowo

Podstawy Programowania Podstawowa składnia języka C++

Podstawy Programowania Podstawowa składnia języka C++ Podstawy Programowania Podstawowa składnia języka C++ Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 3 października 2013 r. Szablon programu w C++ Najprostszy program w C++ ma postać: #include #include

Bardziej szczegółowo

Krótki kurs JavaScript

Krótki kurs JavaScript Krótki kurs JavaScript Java Script jest językiem wbudowanym w przeglądarkę. Gdy ma się podstawy nabyte w innych językach programowania jest dość łatwy do opanowania. JavaScript jest stosowany do powiększania

Bardziej szczegółowo

Laboratorium 1 Wprowadzenie do PHP

Laboratorium 1 Wprowadzenie do PHP Laboratorium 1 Wprowadzenie do PHP Ćwiczenie 1. Tworzenie i uruchamianie projektu PHP w Netbeans Tworzenie projektu Uruchom środowisko NetBeans. Stwórz nowy projekt typu PHP Application (File->New Project,

Bardziej szczegółowo

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź JAVASCRIPT PODSTAWY materiały dydaktyczne dla uczniów słuchaczy opracowanie: 2004-2007 by Arkadiusz Gawełek, Łódź 1. Czym jest JavaScript JavaScript tak naprawdę narodził się w firmie Netscape jako LiveScript,

Bardziej szczegółowo

Rys.2.1. Drzewo modelu DOM [1]

Rys.2.1. Drzewo modelu DOM [1] 1. CEL ĆWICZENIA Celem ćwiczenia jest przedstawienie możliwości wykorzystania języka JavaScript do tworzenia interaktywnych aplikacji działających po stronie klienta. 2. MATERIAŁ NAUCZANIA 2.1. DOM model

Bardziej szczegółowo

Dane - pobieranie, przekazywanie i przechowywanie. dr Beata Kuźmińska-Sołśnia

Dane - pobieranie, przekazywanie i przechowywanie. dr Beata Kuźmińska-Sołśnia Dane - pobieranie, przekazywanie i przechowywanie dr Beata Kuźmińska-Sołśnia Definicja funkcji function nazwa (lista parametrów) { blok instrukcji Użycie instrukcji return wartość kończy działanie funkcji

Bardziej szczegółowo

14. POZOSTAŁE CIEKAWE FUNKCJE

14. POZOSTAŁE CIEKAWE FUNKCJE 14. POZOSTAŁE CIEKAWE FUNKCJE Funkcji jest cała masa, których nie poruszono w tym kursie. Bardziej ciekawe postaram się właśnie w tej lekcji omówić. Na pewno wielu z Was, czeka z niecierpliwością na funkcję

Bardziej szczegółowo

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch. Instrukcje warunkowe i skoku. Spotkanie 2 Dr inż. Dariusz JĘDRZEJCZYK Wyrażenia i operatory logiczne Instrukcje warunkowe: if else, switch Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania

Bardziej szczegółowo

Podstawy i języki programowania

Podstawy i języki programowania Podstawy i języki programowania Laboratorium 3 - operatory oraz instrukcje warunkowe i wyboru mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 19 października 2018 1 / 35 mgr inż. Krzysztof

Bardziej szczegółowo

Być może jesteś doświadczonym programistą, biegle programujesz w Javie,

Być może jesteś doświadczonym programistą, biegle programujesz w Javie, Kompendium PHP 01 Być może jesteś doświadczonym programistą, biegle programujesz w Javie, C++, Pythonie lub jakimś innym języku programowania, których jak myślę, powstało już tyle, że chyba nie ma osoby,

Bardziej szczegółowo

Wprowadzenie do Scilab: podstawy języka Scilab

Wprowadzenie do Scilab: podstawy języka Scilab Wprowadzenie do Scilab: podstawy języka Scilab Magdalena Deckert, Izabela Szczęch, Barbara Wołyńska, Bartłomiej Prędki Politechnika Poznańska, Instytut Informatyki Narzędzia Informatyki Narzędzia Informatyki

Bardziej szczegółowo

Metody numeryczne Laboratorium 2

Metody numeryczne Laboratorium 2 Metody numeryczne Laboratorium 2 1. Tworzenie i uruchamianie skryptów Środowisko MATLAB/GNU Octave daje nam możliwość tworzenia skryptów czyli zapisywania grup poleceń czy funkcji w osobnym pliku i uruchamiania

Bardziej szczegółowo

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź JAVASCRIPT PODSTAWY materiały dydaktyczne dla uczniów słuchaczy opracowanie: 2004-2007 by Arkadiusz Gawełek, Łódź 1. Czym jest JavaScript JavaScript tak naprawdę narodził się w firmie Netscape jako LiveScript,

Bardziej szczegółowo

do drukowania tekstu służy funkcja echo <?php echo "hello world!";?> jeżeli użyjemy jej kilka razy: <?php

do drukowania tekstu służy funkcja echo <?php echo hello world!;?> jeżeli użyjemy jej kilka razy: <?php S t r o n a 1 Podstawy PHP 1. stwórz plik tekstowy o nazwie index.php Zawartość pliku musi mieć postać: Znaczniki kodu php: Przykładowy kod typu "hello world!" Wpisz powyższy kod do plkiku index.php Skopiuj

Bardziej szczegółowo

Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I

Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych MySQL studia zaoczne II stopnia, sem. I Plan wykładu 1. MySQL: funkcje, procedury, wyzwalacze 2. HTML : tworzenie

Bardziej szczegółowo

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

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje. Podstawowe elementy proceduralne w C++ Program i wyjście Zmienne i arytmetyka Wskaźniki i tablice Testy i pętle Funkcje Pierwszy program // Niezbędne zaklęcia przygotowawcze ;-) #include using

Bardziej szczegółowo

FORMULARZE. G. Przęczek

FORMULARZE. G. Przęczek FORMULARZE G. Przęczek Tworzenie formularzy w HTML Podstawowe ramy formularza wyznacza znacznik który ma szereg atrybutów, które określają jego działanie. Pierwszym atrybutem jest action,

Bardziej szczegółowo

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń.

Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń. Podstawy programowania Programowanie wyrażeń 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń. W językach programowania są wykorzystywane

Bardziej szczegółowo

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44

Programowanie w C++ Wykład 2. Katarzyna Grzelak. 4 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44 Programowanie w C++ Wykład 2 Katarzyna Grzelak 4 marca 2019 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 44 Na poprzednim wykładzie podstawy C++ Każdy program w C++ musi mieć funkcję o nazwie main Wcięcia

Bardziej szczegółowo

Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk

Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery Łukasz Bartczuk Moduł 3 Formularze Agenda Podstawy formularzy HTML Podstawowe kontrolki formularzy HTML Nowe kontrolki z HTML

Bardziej szczegółowo

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

PHP i MySQL dla każdego / Marcin Lis. Wyd. 3. Gliwice, cop Spis treści PHP i MySQL dla każdego / Marcin Lis. Wyd. 3. Gliwice, cop. 2017 Spis treści Wstęp 11 Część I Skrypty PHP dynamiczne generowanie stron internetowych 15 Rozdział 1. Podstawy 17 Czym jest PHP? 17 Krótka

Bardziej szczegółowo

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP Zad. 1 Dla każdego zamówienia wyznaczyć jego wartość. Należy podać numer zamówienia oraz wartość. select z.id_zamowienia, sum(ilosc*cena) as wartosc

Bardziej szczegółowo

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

BAZY DANYCH. Obsługa bazy z poziomu języka PHP. opracowanie: Michał Lech BAZY DANYCH Obsługa bazy z poziomu języka PHP opracowanie: Michał Lech Plan wykładu 1. PHP - co to jest? 2. Bazy danych obsługiwane przez PHP 3. Podstawowe polecenia 4. Sesje 5. Przykład - dodawanie towaru

Bardziej szczegółowo

Języki skryptowe w programie Plans

Języki skryptowe w programie Plans Języki skryptowe w programie Plans Warsztaty uŝytkowników programu PLANS Kościelisko 2010 Zalety skryptów Automatyzacja powtarzających się czynności Rozszerzenie moŝliwości programu Budowa własnych algorytmów

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium PHP. Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię PHP. Aplikacja pokazuje takie aspekty, obsługa formularzy oraz zmiennych

Bardziej szczegółowo

Przedmiot: Programowanie usług internetowych - Delphi Przygotował: K. Strzałkowski Rok V. Semestr IX. Wydział ZiMK

Przedmiot: Programowanie usług internetowych - Delphi Przygotował: K. Strzałkowski Rok V. Semestr IX. Wydział ZiMK Przedmiot: Programowanie usług internetowych - Delphi Przygotował: K. Strzałkowski Rok V. Semestr IX. Wydział ZiMK Ćwiczenie 3 Przekazywanie danych do programu CGI 1. Odbieranie w programie wartości zmiennych

Bardziej szczegółowo

Aplikacje internetowe - laboratorium

Aplikacje internetowe - laboratorium Aplikacje internetowe - laboratorium PHP Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej opartej o język PHP. Aplikacja ilustruje takie mechanizmy jak: obsługa formularzy oraz obsługa

Bardziej szczegółowo

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji

Bardziej szczegółowo

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak JAVA Wstęp do programowania w języku obiektowym Bibliografia: JAVA Szkoła programowania, D. Trajkowska Ćwiczenia praktyczne JAVA. Wydanie III,M. Lis Platforma JSE: Opracował: Andrzej Nowak JSE (Java Standard

Bardziej szczegółowo

Wykład 6: PHP: praca z bazą danych MySQL, cz.2

Wykład 6: PHP: praca z bazą danych MySQL, cz.2 Wykład 6: PHP: praca z bazą danych MySQL, cz.2 Połączenie z bazą danych (cba.pl) Uwaga ogólna: Gdy korzystamy z usługi hostingowej: usługodawca poda nam nasz login, hasło i nazwę bazy danych (przy bezpłatnej

Bardziej szczegółowo

Internetowe bazy danych

Internetowe bazy danych Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 2 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl Internetowa aplikacja bazodanowa Przeglądarka

Bardziej szczegółowo

Programowanie w języku Python. Grażyna Koba

Programowanie w języku Python. Grażyna Koba Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i

Bardziej szczegółowo

Zmienne i stałe w PHP

Zmienne i stałe w PHP Zmienne i stałe w PHP Zmienne Zmienne to konstrukcje programistyczne, które pozwalają na przechowywanie danych. Każda zmienna posiada swoją nazwę oraz typ. Nazwa to jednoznaczny identyfikator, dzięki któremu

Bardziej szczegółowo

Autor: Joanna Karwowska

Autor: Joanna Karwowska Autor: Joanna Karwowska Wygodniejszym i wydajniejszym sposobem przechowywania i korzystania z dużej ilości danych zapisanych na serwerze jest współpraca z relacyjną bazą danych. 2 1. Utworzyć bazę danych.

Bardziej szczegółowo

2 Przygotował: mgr inż. Maciej Lasota

2 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 2 1/7 Język C Instrukcja laboratoryjna Temat: Wprowadzenie do języka C 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do języka C. Język C jest językiem programowania ogólnego zastosowania

Bardziej szczegółowo

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD programowania Wykład: 4 Instrukcje sterujące, operatory 1 programowania w C++ Instrukcje sterujące 2 Pętla for for ( instrukcja_ini ; wyrazenie_warunkowe ; instrukcja_krok ) tresc_petli ; instrukcja_ini

Bardziej szczegółowo

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

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się

Bardziej szczegółowo

Technologie sieciowe Sprawozdanie z labolatorium. Lista 5

Technologie sieciowe Sprawozdanie z labolatorium. Lista 5 Politechnika Wrocławska Wydział Podstawowych Problemów Techniki Technologie sieciowe Sprawozdanie z labolatorium Lista 5 Autor: Piotr Kosytorz IIrokInf. indeks: 166174 Prowadzący: dr inż. Łukasz Krzywiecki

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.

Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc. Zmienne powłoki Zmienne powłoki (shell variables) to tymczasowe zmienne, które mogą przechowywać wartości liczbowe lub ciągi znaków. Związane są z powłoką, Przypisania wartości do zmiennej następuje poprzez

Bardziej szczegółowo

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia Zmienna: [] [ '[' ']' ] ['=' ]; Zmienna to fragment pamięci o określonym

Bardziej szczegółowo

Ćwiczenie: JavaScript Cookies (3x45 minut)

Ćwiczenie: JavaScript Cookies (3x45 minut) Ćwiczenie: JavaScript Cookies (3x45 minut) Cookies niewielkie porcje danych tekstowych, które mogą być przesyłane między serwerem a przeglądarką. Przeglądarka przechowuje te dane przez określony czas.

Bardziej szczegółowo

Programowanie strukturalne i obiektowe

Programowanie strukturalne i obiektowe Programowanie strukturalne i obiektowe Język C część I Opracował: Grzegorz Flesik Literatura: A. Majczak, Programowanie strukturalne i obiektowe, Helion, Gliwice 2010 P. Domka, M. Łokińska, Programowanie

Bardziej szczegółowo

Pascal - wprowadzenie

Pascal - wprowadzenie Pascal - wprowadzenie Ogólne informacje o specyfice języka i budowaniu programów Filip Jarmuszczak kl. III c Historia Pascal dawniej jeden z najpopularniejszych języków programowania, uniwersalny, wysokiego

Bardziej szczegółowo

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij.

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij. Programowanie Sobera Jolanta 16.09.2006 Strona 1 z 26 1 Wprowadzenie do programowania 4 2 Pierwsza aplikacja 5 3 Typy danych 6 4 Operatory 9 Strona 2 z 26 5 Instrukcje sterujące 12 6 Podprogramy 15 7 Tablice

Bardziej szczegółowo

Podstawy programowania w języku C i C++

Podstawy programowania w języku C i C++ Podstawy programowania w języku C i C++ Część czwarta Operatory i wyrażenia Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu,

Bardziej szczegółowo

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których

Bardziej szczegółowo

XML extensible Markup Language. część 5

XML extensible Markup Language. część 5 XML extensible Markup Language część 5 XML ważne zastosowanie Jak często pracujemy z plikami XML? Wróćmy jeszcze do wykładu poprzedniego. A dokładnie do pliku zawierającego ten wykład. xml_2017_wyklad_4.pptx

Bardziej szczegółowo

Bazy danych i strony WWW

Bazy danych i strony WWW Bazy danych i strony WWW Obsługa baz danych poprzez strony WWW Niezbędne narzędzia: serwer baz danych np. MySQL serwer stron WWW np. Apache przeglądarka stron WWW interpretująca język HTML język skryptowy

Bardziej szczegółowo