Subject name | PHP programming |
Details | Code VSITE272 Abbrev. PHP ECTS 5 Year 1 Semester Summer semester Type major obligatory NQF Level 7 Master's study E-Learning 0% |
Activities | DIT zg - Win 24/25 ECTS Units Hours Total T 1 15 2 30
N 0 0 0 0
L 1 13 2 30
S 0 0 0 0
PN 0 0 0 0
PT 0 2 1 0
PR 0 0 0 0
EN 0 0 0 0
ET 0 1 2 0
AL 3 1 90 90
|
Teachers | Leaders: Dalibor Bužić, v. pred. Assistants: Filip Velebit Samodol, str. sur. |
Prerequisits | None |
Content | Uvod u PHP programiranje. Pojam Web aplikacije. Struktura HTML dokumenta. Funkcioniranje Apache web servera i PHP interpretera. Osnove PHP sintakse. Varijable i tipovi podataka u PHP -u. Operatori. Strukture odluke i ponavljanja. Rad s podatkovnim nizovima. Obrada tekstovnih nizova. Korisnički definirane funkcije. Funkcije za rad s vremenom. Rad s datotekama. Obrasci. Objektno orijentirano programiranje u PHP -u. Klase i objekti. Osnove rada MySQL servera. Povezivanje PHP-a s MySQL bazom podataka. Dinamičko generiranje HTML dokumenata temeljem podataka iz relacijske baze. Integracija s drugim tehnologijama (JavaScript, AJAX).
|
Learning objectives | Osposobiti studenta za programiranje u jeziku PHP.
|
Learning outcomes | 1. Explain the concept of WEB applications, to show the structure of an HTML document, explain how an Apache/PHP server works, the variables and data types. 2. Apply basic PHP syntax, use operators and branching structures, and the PHP object-oriented concept. 3. Create and process arrays and data fields, define user functions. 4. Connect to the MySQL database, dynamically generate HTML documents. 5. Integrate JavaScript and AJAX.
|
Competencies | Kolegij pruža osnovna znanja iz programskog jezika PHP i osposobljava studenta za izradu dinamičkih WEB stranica u PHPu.
|
Recommended Literature | 1. Lerdorf, R.; Tatroe, K.; MacIntyre, P.: Programming PHP, O'Reilly, 2006.
|
Additional Literature | 1. Materijali sa interneta: PHP Manual, http://www.php.net/manual/en/
|
lectures (T) | - Skriptiranje na strani klijenta i na strani poslužitelja. Uvod u programski jezik PHP. Identifikatori. Tipovi podataka. Varijable u PHP-u.
- Operatori (aritmetički, logički, relacijski, bitovni, uvjetni). Operator pridruživanja, spajanja stringova, operatori pretvorbe tipova. Kontrola toka programa.
- Naredba if sa svojim podvarijantama. Naredba switch. Petlje while i do while. Ugnježđivanje petlji. Naredbe break i continue.
- Petlja for. Prednosti korištenja funkcija. Definiranje funkcija. Opseg i trajanje varijabli. Prosljeđivanje vrijednošću ili referencom. Podrazumijevana vrijednost parametra. Varijabilni broj parametara u funkciji.
- Indeksirani i asocijativni nizovi. Pohranjivanje podataka u niz. Funkcije za rad s nizovima. Korištenje foreach i for petlje s nizovima. Sortiranje. Operacije nad cijelim nizom. Skupovne operacije.
- Rad s nizovima znakova. Heredoc i newdoc format. Naredbe za ispis stringova. Funkcije za rad sa stringovima. Usporedba stringova. Regularni izrazi.
- Objektno prijentirano programiranje u PHP-u. Klase, objekti, postupci, podatkovni članovi klase.
- Čahurenje u OOP. Konstruktor i destruktor. Naslijeđivanje. Overriding.
- PHP i web forme. Superglobalne varijable. Postupci GET i POST.
- Održavanje stanja informacija. Skrivena polja. Promjena URL-a. Kolačići. Sjednice.
- Pristup bazama podataka pomoću PHP-a. Apache, MySQL i PHP. Tipovi podataka u MySQL-u. Spajanje na MySQL. Dohvaćanje, unos, ažuriranje i brisanje podataka iz baze.
- Rad s datotekama. Dohvaćanje informacija o datoteci. Otvaranje i zatvaranje datoteke. Čitanje i upisivanje u datoteku. Dozvole. Rad s direktorijima.
- Prikaz datuma i vremena u PHP-u. Formatiranje prikaza datuma i vremena. Pretvaranje govornih izraza u UNIX vremenske podatke. Funkcije za rad s vremenskim podacima.
- JavaScript. Kombiniranje JavaScripta s PHP-om. AJAX. Kombiniranje AJAX-a s PHP-om.
- Drugi kolokvij.
|
laboratory exercises (L) | - Upoznavanje s Netbeans razvojnim okruženjem.
- Interakcija s korisnikom preko web forme. Naredbe grananja (if, switch). Petlje.
- Programske petlje. Funkcije – parametri i vraćanje vrijednosti. Opseg i trajanje varijabli.
- Funkcije - prosljeđivanje vrijednošću ili referencom. Podrazumijevana vrijednost parametra. Varijabilni broj parametara.
- Indeksirani i asocijativni nizovi. Funkcije za rad s nizovima.
- Funkcije za rad s nizovima. Sortiranje nizova.
- Funkcije za rad sa stringovima.
- Regularni izrazi i funkcija preg_match().
- Objektno orijentirano programiranje - klase, objekti, postupci. Konstruktor i destruktor. Modifikatori dostupnosti.
- Web tehnike - korištenje kolačića i sjednica.
- MySQL. PhpMyAdmin. Rad s bazom podataka.
- Rad s datotekama i direktorijima.
- Integracija PHP-a, JavaScripta i AJAX-a.
|
preliminary exam - theory (PT) | - Cjeline U1-U6. Kolokvij se polaže pismeno. Prolaz na kolokviju: 50% minimalno, uvjetni prolaz je 40% (u ukupnom zbroju mora biti 50% oba kolokvija). U slučaju jednog nepoloženog kolokvija moguće su dvije nadoknade (ispravci) kolokvija na redovnim ispitnim rokovima (zimski rokovi za studente zimskog semestra).
- Cjeline U7-U14. Kolokvij se polaže pismeno. Prolaz na kolokviju: 50% minimalno, uvjetni prolaz je 40% (u ukupnom zbroju mora biti 50% oba kolokvija). U slučaju jednog nepoloženog kolokvija moguće su dvije nadoknade (ispravci) kolokvija na redovnim ispitnim rokovima (zimski rokovi za studente zimskog semestra).
|
exam - theory (ET) | - Ukupna ocjena oba kolokija minimalno 50%. Konačnu ocjenu sačinjava kolokvij teorije (ili rezultat ispita) 80%, izlazni testovi laboratorijskih vježbi 13% te izlazni testovi predavanja 7%. U slučaju nepoloženog jednog kolokvija, student ima mogućnost popravka (ponavljanja) kolokvija dva puta. Ako u ta dva dodatna pokušaja ne uspije položiti kolokvij, ispada iz bolonjskog sustava kolokvija te polaže klasičan ispit cijelog gradiva. Studenti koji nisu u sustavu kolokvija polažu kompletno gradivo kolegija odjednom. Raspon ocjena: 0-50% nedovoljan 50-62,5% dovoljan 62,5-75% dobar 75-87,5% vrlo dobar 87,5-100% izvrstan (odličan).
|
autonomus learning (AL) | - / testovi i kolokviji, konzultacije, samostalni rad i samostalno učenje
|