PHP za pocetnike - predavanje 11

13

Click here to load reader

Transcript of PHP za pocetnike - predavanje 11

Page 1: PHP za pocetnike - predavanje 11

PHP za početnike

Academy387 Nermin Šehić

Predavanje 11

Page 2: PHP za pocetnike - predavanje 11

Recap predavanje 10• PDO

• Insert sa PDO

• Prepared statement

• Select & Join sa PDO

• Delete sa PDO

• HTML Forma

Page 3: PHP za pocetnike - predavanje 11

Note:

• Naredne prezentacije ne sadrzavaju teoretski dio, vec su zamisljene da budu svojevrsi guide kroz development aplikacije koja se nalazi na github repozitoriju.

Page 4: PHP za pocetnike - predavanje 11

MVC Blog

• MVC stuktura aplikacije

• Front i admin dio

• Baza podataka

• Forme

• Ispis podatka na view

Page 5: PHP za pocetnike - predavanje 11

PHP fajlovi

• https://github.com/newPrimitives/php-kurs/tree/master/lecture11

Page 6: PHP za pocetnike - predavanje 11

Baza podataka

• https://github.com/newPrimitives/php-kurs/blob/master/lecture11/database/blog_2015-11-12.sql

Page 7: PHP za pocetnike - predavanje 11

Struktura aplikacije• Inicijalni korak jeste organizovanje strukture aplikacije tako

da fajlovi budu logicki grupisani

• Svaki view na nasoj aplikaciji ce imati poseban folder unutar kojeg cemo imati 2 fajla: view(html) dio i controller (php dio).

• Poseban folder je rezervisan za model (konekcija sa bazom i ispis iz baze)

• Kompletan CSS i slike ce biti grupisan u zaseban folder koji cemo nazvati “public”

Page 8: PHP za pocetnike - predavanje 11

Staticki dio

• Da bi u postpunosti shvatili atribute koji ce biti potrebni u nasoj bazi podataka, prvi korak ce biti da definisemo view-ove koje ce nasa aplikacija imati te da isprogramiramo sav staticki sadrzaj.

• U ovom slucaju to su view-ovi za dodavanje autora, dodavanje clanka, ispis svih clanaka te ispis pojedinacnih clanaka.

Page 9: PHP za pocetnike - predavanje 11

Baza• Nakon sto znamo koje forme ce nasi view-ovi

imati pristupamo dizajnu baze.

• Baza ce imati dvije tabele: author i articles, sa one-to-many vezom (1 autor moze napisati vise clanaka)

• S obzirom da imamo samo dvije tabele potreba za crtanjem ERD nije velika, medjutim u slucaju vecih projekata ERD bi bio prioritet

Page 10: PHP za pocetnike - predavanje 11

Konekcija u modelu

• Nakon sto smo definisali nase views te isprogramirali bazu, naredni korak jeste da kroz PDO u nasem modelu napravimo konekciju

• Konekcija sa bazom se obicno testira sa nekim dummy query-em

• Ukoliko ispis rezultata SELECT * FROM table_name ne izbaci error konekcija je uspjesna

Page 11: PHP za pocetnike - predavanje 11

Kontroleri • Naredni korak jeste da nase staticne stranice

pretvorimo u dinamicke

• Za svaki HTML page koji smo napravili na pocetku definisemo controller, te zavisno od toga kakvi nam podaci trebaju dodajemo funckije u model

• Trenutno nas model ima samo 1 funkciju, a to je veza sa bazom

• Kako aplikacija bude rasla tako ce se i funkcionalnost naseg modela povecavati

Page 12: PHP za pocetnike - predavanje 11

Testiranje

• Iako cemo prilikom svake nove funkcionalnosti testirati nas kod dobra je praksa da se na kraju testira kompletan flow

Page 13: PHP za pocetnike - predavanje 11

• Naredno predavanje: 17.11.2015

• http://www.slideshare.net/NerminSehic/php-za-pocetnike-predavanje-11