SKRIPTA IZ PREDMETA INTERNET TEHNOLOGIJE

PHP

SADRŽAJ

1

Uvod................................................................................................................................. 3

2

PHP OKRUŽENJE........................................................................................................... 3

2.1

Razlika između server-side i client-side skripti..........................................................5

3

OSNOVE PHP KODA......................................................................................................7

3.1

Osnovna sintaksa, promenljive i operatori.................................................................7

3.2

Promenljive, tipovi podataka, konstante....................................................................9

3.3

Funkcije...................................................................................................................10

3.3.1

Funkcije za upravljanje varijablama..................................................................12

3.4

Domen važenja promenljive.................................................................................... 13

3.5

Operatori.................................................................................................................. 14

3.6

PHP uslovne naredbe.............................................................................................. 16

3.7

PHP petlje................................................................................................................ 18

3.8

Nizovi.......................................................................................................................20

3.9

Rad sa stringovima..................................................................................................23

4

NAPREDNA SINTAKSA PHP KODA.............................................................................28

4.1

Date......................................................................................................................... 28

4.2

Include and Require.................................................................................................29

4.3

ObjektnoOrijentisanoProgramiranje u PHP.............................................................30

4.4

PHP napredne funkcije za rukovanje fajlovima.......................................................32

4.5

Superglobals............................................................................................................ 33

4.6

Register globals.......................................................................................................34

4.7

PHP napredne funkcije za rukovanje cookies.........................................................35

4.7.1

Slanje header-a................................................................................................ 37

4.8

PHP napredne funkcije za sesijama........................................................................38

4.9

PHP napredne funkcije za upravljanje greškama....................................................44

5

UVOD U FORME...........................................................................................................47

5.1

O formama uopšteno...............................................................................................47

5.2

Metode slanja i prihvatanja podataka......................................................................48

5.3

Provera metode pristupa dokumentu / skripti..........................................................51

5.4

Forme i srpski znakovi.............................................................................................52

5.5

Prikaz i obrada unutar jednog dokumenta...............................................................52

5.6

Elementi za unos podataka..................................................................................... 54

5.7

Text box polje..........................................................................................................54

5.8

Text area..................................................................................................................54

5.9

Hidden polje............................................................................................................. 56

5.10

Checkbox............................................................................................................. 56

5.11

Upload fajla.......................................................................................................... 58

2

background image

1 Uvod 

Server - side skripting je web server tehnologija koja omogućava da se korisnički zahtevi 
obrađuju  pomoću   skripti   koje   se   izvršavaju   na   serverskoj   strani   kako   bi   se   generisale 
dinamičke   stranice.   Najčešće  se   koristi   da   bi   se   interaktivne   web   stranice   povezale   sa 
bazama   podataka,   radi   identifikacije   korisnika,   ažuriranja   sadržaja,   stvaranja   raznih 
diskusionih   grupa   i   još   zbog   mnogo   toga.   Razlika   između   skriptovanja   na   serverskoj   i 
korisničkoj strani je u tome što se kod korisničke strane skripte izvršavaju u web browser-u 
korisnika, najčešće pomoću 

JavaScript

-a.

Najzastupljenije tehnike serverske strane :

Common Gateway Interface

Active Server Pages

Java Servlet i Java Server Pages

PHP

PHP je open source jezik koji se koristi za razvoj server-side aplikacija, kao i dinamičkog 
Web sadržaja. PHP dozvoljava interakciju sa velikim brojem relacionih baza podataka kao 
što su MySQL, Oracle, IBM D2, Microsoft SQL Server, PostgreSQL i SQLite. PHP radi na 
većini operativnih sistema današnjice, kao što su UNIX, Linux, Windows i Mac OS i može da 
interaguje sa većinom Web servera. 

Personal Home Page Tools je predstavio PHP 1995. godine, a dve godine kasnije su razvoj 
nastavila dva Izraelska programera. Od 1999. godine se zasniva na Zend engine-u. PHP je 
prvo bio akronim za Personal Home Page Tools, da bi kasnije promenio naziv u Hypertext 
Preprocessor.

PHP je stekao popularnost zbog svoje jednostavnosti i sintakse nasleđene iz programskog 
jezika C. Tokom vremena jezik se proširivao i sticao mogućnosti za objektno orijentisano 
programiranje, naročito od verzije 5.0. Nalikuje jeziku C++ u smislu da dozvoljava i čisto-
proceduralno programiranje ali omogućava i korišćenje klasa i drugih koncepata objektno 
orijentisanog programiranja (nasleđivanje, apstraktne metode, interfejsi itd.).

Danas, PHP je instaliran na više od 20 miliona sajtova i preko million web servera. Poslednja 
realizovana stabilna verzija je 5.3.0 iz juna 2009.god. 

2 PHP OKRUŽENJE

Neke od osnovnih odrednica PHP – a su:

PHP je akronim za Hypertext Preprocessor

server – side skriptni programski jezik

skripte se izvršavaju na serveru

podržava   rad   sa   različitim   bazama   podatama   (MySQL,   Informix,   Oracle,   Sybase, 
Solid, PostgreSQL, Generic ODBC, itd.)

open source softver (OSS)

radi na različitim platformama (Windows, Linux, Unix i td.)

kompatibilan je sa skoro svim serverima koji se danas koriste (Apache, IIS, itd. )

4

lak je za učenje i efikasno funkcioniše na strani servera. 

Za PHP fajlove, bitne su sledeće činjenice:

mogu da sadrže tekst, HTML tagove i skripte

vraćaju se klijentskom browser – u kao HTML tekst (

plain HTML

)

imaju ekstenziju: “.

php

”, “.

php3

” ili “.

phtml

Najpopularnija   arhitektura   u   okviru   koje   se   PHP   koristi   je   WAMP 
(Windows/Apache/MySQL/PERL/PHP).   Windows   je   operativni   sistem   gde   se   instaliraju 
ostali elementi pomenute arhitekture. Apache je open source Web server, tako da se i na 
lokalnoj mašini uz pomoć Apache -   a, može simulirati klijent/server okruženje. MySQL je 
open   source   server   baze   podataka   koji   podržava   SQL   (

Structured   Query   Language

)   i 

idealan je kako za manje, tako i za veće baze podataka. Ako se PHP koristi u kombinaciji sa 
MySQL – om može se napraviti multiplatformska aplikacija, što znači da se može razviti u 
Windows okruženju, a da se potom koristi na npr. Unix mašinama. 

PHP   je   bogat   funkcijama   za   manipulisanje   mnogo   različitih   tipova   sadržaja.   Od 
manipulisanja grafikom (png, jpg, flash…) do loado-vanja .NET modula i rada sa XML-om

Da bi se implementirala pomenuta arhitektura, neophodno je  uraditi sledeće:

Download Apache Web servera

1

 (i njegova instalacija na lokalnoj mašini). 

Download MySQL

2

, server baze podataka i njegova instalacija na lokalnoj mašini.

Download PHP

3

 - i njegova instalacija na  lokalnoj mašini. 

Takođe treba napomenuti da je moguće gore navedene komponente skinuti u formi paketa 
koji sadrže sve pomenute komponente. Najpoznatiji paketi tog tipa su: EasyPHP

4

, WAMP

5

 

XAMPP

6

Download i korišćenje ovih paketa je takođe besplatno.

Program koji se napiše u PHP-u ne zahteva prevođenje (kompajliranje), nego se interpretira 
pri svakom izvršavanju. PHP interpreter može raditi po CGI principu, odnosno tako što će 
interpreter postojati kao eksterna aplikacija koja se poziva da izvrši datu skriptu svaki put 
kad bude zahtevana od nekog korisnika, a može biti instaliran i kao modul veb-servisa. 
Druga varijanta je danas u najvećoj upotrebi jer pruža znatno veću brzinu izvršavanja - 
interpreter je na taj način uvek učitan u memoriju te se ne mora pozivati spoljašnji program.

Uobičajen scenario po kom se izvršavaju PHP skripte na web serveru je sledeći:

klijent (korisnik Interneta koji koristi neki brauzer) zahteva PHP stranicu sa servera

server prosleđuje zahtev servisu za veb (program veb-server na serveru)

veb-server prepoznaje da se traži PHP datoteka

ne šalje njegov sadržaj klijentu, nego ga izvršava kao program pomoću PHP modula

izlazni tekst programa (standardni izlaz) se šalje klijentu kao rezultat zahteva

klijent prepoznaje vrstu rezultata (HTML kod, slika, PDF sadržaj, arhiva itd.)

rezultat se prikazuju klijentu na odgovarajući način

1

 

http://httpd.apache.org/download.cgi

2

 

http://www.mysql.com/downloads/index.html

3

 

http://www.php.net/downloads.php

4

 http:///

www.

 

 download

 

 .com/

 

 EasyPHP

 

 /3000-7957_

 

 

4-

   

10297309.html

 

 

5

 

http://www.wampserver.org

6

 

http://www.apachefriends.org/en/

 

 xampp

 

 .html

 

 

5

background image

Slika 2 Obrada zahteva za HTML stranicom

Server-side obrada omogućava:

Smanjuje količinu saobraćaja između server i klijenta

Otklanja problem kompatibilnosti browser-a

Obezbeđuje različite tipove informacija za klijente

Poboljšava sigurnost aplikacije

Možda bi bilo najbolje malo detaljnije razmotriti razlike između njih na jednom trivijalnom 
primeru. Neka je na primer, potrebno napisati skriptu koja prikazuje tačno vreme negde na 
stranici. Iako ovo zvuči kao vrlo trivijalan i lagan primer, gotovo ga je nemoguće izvesti. 
Zašto? Prvo pitanje koje treba postaviti je 'Koje je vreme tačno vreme?'. Ono na serveru ili 
ono na klijentovom računaru? Ove dve skripte će retko kada prikazati isti rezultat.

Primer 1 – prikaz vremena kod klijenta

<

html

>

<

head

>

<

script

 

language

="

JavaScript

"

>

var

 v 

=

 

new

 Date

()

document

.

write

(

v

.

getHours

())

document

.

write

(

":"

)

document

.

write

(

v

.

getMinutes

())

document

.

write

(

":"

)

document

.

write

(

v

.

getSeconds

())

</

script

>

</

head

>

<

body

>

</

body

>

</

html

>

7

Želiš da pročitaš svih 59 strana?

Prijavi se i preuzmi ceo dokument.

Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.

Slični dokumenti