Utisci korisnika

Želeo bih da Vam se zahvalim na Vašoj brzoj pošiljci, sertifikatu i novom kursu, koji sam juče preuzeo putem Post-expresa. Još jedanput Vam se zahvaljujem na Vašoj profesionalnosti.…

"Želim da kazem da iako sam tek na pola, da sam oduševljena ovim načinom na koji stvari funkcionisu!" Stanislava Kraguljac, Beograd


Kompletna lista utisaka

Testiranje online

Arhitektura računara

Za one koji žele da znaju više.

Windows OS

Ovo bi svakako trebalo da probate.

Odnosi s javnošću

Koliko znate PR?

Pogledajte još neke od testova

Newsletter

Ukoliko želite da Vas redovno obaveštavamo o novostima sa Link eLearning sajta prijavite se na našu newsletter listu.

Ime:

Prezime:

Email:


Anketa

Arhiva anketa

BAZA ZNANJA


Kurs: - Core PHP Programming

Modul: Definicija instalacija i osnove PHP-a

Autor: Vladimir Marić

Naziv jedinice: Instalacija i priprema za rad


Materijali vezani uz ovu lekciju:

- Test instalacija i priprema za rad
- Instalacija i priprema za rad (PDF dokument)



PHP je skript programski jezik opšte namene. Prvobitno je dizajniran kao jezik za kreiranje dinamičkih veb strana. Omogućava brzo procesiranje i učitavanje strana, jednostavan je za razumevanje i korišćenje i izvršava se na skoro svim operativnim sistemima. PHP se procesira od strane veb servera i generiše XHTML kod ili neki drugi izlaz koji veb čitači mogu da prepoznaju i interpretiraju.

Da biste mogli da kreirate interaktivne veb strane i da izvršavate PHP programe, neophodno je da imate pristup nekom serveru koji podržava PHP. Međutim, često je u toku kreiranja nekog interaktivnog veb sajta pomoću PHP-a veoma nepraktično da svaki put kada napravite neku PHP stranu, morate da je prebacite na udaljeni server kako biste je istestirali. Zbog toga se preporučuje da PHP instalirate lokalno, na svoj računar.

Neki operativni sistemi, kao što su Linux i mnoge verzije Unix-a, sada se isporučuju sa već instalranim PHP-om. Kod drugih operativnih sistema, kao što su Windows ili Mac OSX, morate to da uradite sami.

Dakle, PHP je skript jezik čija je primarna, ali ne i jedina funkcija (jer je u pitanju jezik opšte namene) obrada podataka na veb serveru i njihova implementacija u HTML kod. U pitanju je direktan derivat jezika C i veći deo sintakse je identičan ovom programskom jeziku. Besplatan je i njegova primena u HTML-u je veoma jednostavna. Ipak, potrebno je (osim, naravno, poznavanja samog jezika), da bi se uspostavila funkcionalnost, ispuniti nekoliko uslova:

  • Instalirati PHP na računaru na kome želimo da se izvršava
    PHP skripte se interpretiraju, što znači da se ne startuju direktno već putem programa za interpretaciju. Instalacijom PHP paketa na računar, ova komponenta biće omogućena.
  • Instalirati veb server na računaru na kome želimo da se izvršava
    PHP-u zapravo i nije potreban veb server da bi se izvršavao, već samo interpreter. Ali, obzirom da ćemo se držati PHP-a u kontekstu veba, neophodan je i veb server.
  • Instalirati bazu podataka računaru na kome želimo da se izvršava
    Ovo takođe nije neophodna komponenta, ali obzirom da je PHP "produžena ruka" veb strana ka podacima, baza podataka je veoma preporučljiva.
  • Odabrati alat za PHP kodiranje
    Izvorni PHP kod je moguće pisati u najprimitivnijim alatima za procesiranje teksta (npr. Notepad). Ipak, najbolje je koristiti neki alat koji prepoznaje (i markira) PHP naredbe. Moguće je (i poželjno) u ovu svrhu koristiti i neki od (najčešće komercijalnih) paketa za proizvodnju HTML strana (Adobe Dreamweaver, MS Front Page itd.) koji u sebi ima i deo za dizajniranje. Za potrebe kursa, koristićemo Notepad++.


 
Instalacija PHP-a

Postoji više načina da se PHP instalira na operativni sistem. Ukoliko je u pitanju Linux, instalacija se vrši pri ili posle instalacije samog OS-a pridruživanjem odgovarajućih servisa iz distribucije OS-a.

Kada je u pitanju MS Windows, instalacija se generalno može izvršiti na dva načina. Jedan je "ručno", komponentu po komponentu, a drugi instalacijom nekog paketa koji u sebi sadrži ceo sistem. Ovakvi paketi su izuzetno praktični, i mi ćemo se orjentisati na jedan od njih - WampServer. Njime ćemo pokriti tri gore pomenuta uslova (PHP, veb server i bazu).

Za potrebe ovih predavanja, preuzmite i instalirajte WampServer sa Interneta (http://www.wampserver.com/en/).


Instalacija alata za kodiranje

Za potrebe predavanja, preuzmite i instalirajte alat Notepad++ sa Interneta (http://notepad-plus.sourceforge.net/uk/site.htm).

Nakon pravilnog podešavanja svih servisa i pripreme alata, moguće je početi sa upotrebom sistema i proizvodnjom PHP aplikacija. Ipak, da bi olakšali rad, potrebno je upoznati se sa osnovnim načinom funkcionisanja ovakvog sistema.

Pre svega, treba pomenuti da pravila pomenuta gore nisu striktna kao što se isprva možda čine. Na primer, ukoliko čak i ne posedujemo PHP interpreter na sopstvenom računaru to ne znači da ne možemo da stvorimo kod, a posle ga aktiviramo na drugom računaru. Takođe, MySql server/baza podataka ne moraju biti na istom računaru na kome je i veb server. Veb server ne mora biti samo na jednom računaru, niti je uopšte neophodno da to bude baš Apache veb server (moguće je PHP izvršiti i na MS IIS veb serveru)... Jednom rečju, postoje razne varijacije, koje se mogu implementirati prema potrebama celog sistema, ali koje su takođe irelevantne u trenutku proučavanja osnova programskog jezika. Zato, u našem upoznavanju sa jezikom koristimo linearnu proceduru, iako možda ona ne daje najefikasnije rezultate ili nije savršeno preslikana slika nekog realnog sistema. Ono što je bitno, to je da u radnom okruženju stvorimo uslove bliske produkcionom, kako bi implementacija prošla što bezbolnije.


Koordinacija PHP-a i veb servera

Uloga svakog veb servera svodi se, manje ili više, na jednu funkciju - a to je prihvatanje određenog zahteva od korisnika putem Interneta, obrada tog zahteva, što podrazumeva pronalaženje dokumenta koji je u tom zahtevu sadržan, te slanje odgovora korisniku.

Ukoliko korisnički zahtev sadrži naziv i tip dokumenta koji postoji na veb serveru u nekom statičkom obliku, veb server će jednostavno preuzeti dokument sa fajl sistema i isporučiti ga Internetom korisniku. Ali, ukoliko zahtev ne podrazumeva već postojeći dokument, već zahteva sadržaj koji će biti dinamički generisan, veb server mora stvoriti odgovor tako što će startovati skriptu koju zahtev sadrži, te njen rezultat implementiran u dokument u kome se skripta nalazi i proslediti korisniku. Na kraju, obzirom da je pomenuta skripta/program implementirana u neki dokument, korisnik će dobiti svoj rezultat u formi validnog HTML dokumenta.

Prilikom ovog procesa, veb server i klijent (a kada kažemo klijent mislimo na pretraživač IE, FireFox...) koriste isti "jezik"-protokol za komunikaciju. Taj "jezik" naziva se HTTP (HyperText Transfer Protocol) i osnovni je način komunikacije između računara na Internetu.

Gde se u svemu tome uklapa PHP? Uloga PHP-a je u stvari da prevede i startuje pomenutu skriptu, te da prosledi dobijeni rezultat klijentu. Treba znati da PHP nije jedini jezik koji može uraditi tako nešto. Postoje i drugi jezici koji se dobro snalaze u ovom "poslu" (C#, VB, Java...), uz preduslov da server zna koji od njih i kada treba da startuje i gde da pronađe interpretere za njih.


Identifikacija skript jezika

Da bi veb server prepoznao zahtev korisnika za izvršenjem neke skripte potrebno je da bude ispunjen najmanje jedan uslov. Taj uslov je da dokument ima odgovarajuću ekstenziju. U slučaju PHP-a, ova ekstenzija je .php. Da je pitanju neki drugi jezik, ekstenzija bi bila drugačija (npr. C#, VB, J# - .aspx ili .asp, java-.jsp itd.)

Drugi uslov je da dokument uopšte sadrži skriptu u sebi. Ovo nije uistinu preduslov da se dokument prosledi korisniku, jer će, čak i ukoliko ne sadrži skriptu, njegov sadržaj biti prosleđen. Jednostavno, veb server će startovati PHP (interpreter) koji će proći kroz dokument ali obzirom da u njemu nema skripte, ništa neće biti startovano pa će takav dokument, u svom izvornom obliku, biti prosleđen klijentu. Ali, ukoliko želimo (a želimo) da se neka skripta u našem dokumentu i izvrši, moramo to dati do znanja interpreteru. Odgovor leži u parsiranju.

Znamo da se ceo HTML "svet" sastoji od tagova, odnosno, markera koji ograničavaju i identifikuju određene celine. Kada se strana sa ekstenzijom .php prosledi PHP-u, biva parsirana tako što se analiziraju svi njeni tagovi. PHP sve "nezanimljive" tagove prosleđuje u formi u kojoj ih je i pročitao sve dok ne dođe do taga koji se tiče samo njega. Taj tag se obeležava sa <?php ?> ili <? ?>.

Kada PHP parser prepozna navedeni tag, dolazi do aktivacije sadržaja unutar taga i skripta biva izvršena.

Treba obratiti pažnju na to da smo PHP tagove označili sa <?php ?> ili <? ?> iako ovo »ili« ne mora u svakom slučaju biti pravilo. Naime, podrazumevano setovanje konfiguracije PHP-a je da prepoznaje samo jasno naznačene, »dugačke« otvarajuće tagove. Ovo setovanje najčešće biva promenjeno tako da PHP prepoznaje i skraćene tagove, ali za slučaj da su setovanja na produkcionom serveru (onom na kome želimo da trajno držimo naš sajt) ostala na podrazumevanim vrednostima, dugački otvarajući tag je sigurna varijanta, jer najverovatnije, nećemo (ukoliko setovanja ne promenimo na nivou skripte) imati mogućnost pristupa konfiguracionim fajlovima za slučaj da je ova opcija isključena. U sklopu kursa, koristićemo isključivo dugačke otvarajuće tagove.

Veoma je bitno (iako je logično iz prethodnog teksta) naglasiti, da PHP ne omogućava nikakvu aktivnost nakon što je dokument prosleđen klijentu. Dakle, onog trenutka, kada je PHP izvršio skriptu, generisao HTML uz pomoć te skripte i prosledio stranu, toj strani više ne može pristupiti. Zbog toga u PHP-u ne možemo napraviti animacije ili bilo kakve pokrete u pretraživaču. Za to koristimo druge programske alate, poput JavaScript-a, ActionScript-a ili Jave.


Zaključak

Iz ovog uvoda zaključuje se da će krajnji produkt učenja biti proizvodnja PHP skripti u službi HTML-a. To upravo i jeste cilj jer PHP i dominira u pomenutoj infrastrukturi. Bez HTML-a, učenje PHP-a svelo bi se na suvoparno baratanje brojevima i matematičkim i logičkim operacijama, uslovima i ostalim kvalifikatorima programskih jezika. Bez ovih komponenti, svakako u PHP-u nećemo daleko dogurati, ali će učenje svakako biti zanimljivije uz povezivanje sa HTML-om.


Više podataka

Nastanak PHP-a

PHP se u svom najosnovnijem obliku pojavio 1995. godine. Stvorio ga je Danski programer Rasmus Lerdorf u želji da putem skripte prati broj posetilaca veb stranice svog CV-a. Rasmus je ovaj jezik nazvao Personal Home Pages.

Ova primitivna verzija jezika (nasleđenog od jezika C) bila je samo osnova za njegov dalji razvoj, pa je Ramus vrlo brzo ovaj svoj projekat deklarisao kao Open Source, kako bi ga uz pomoć većeg broja programera razvio i unapredio.

Najveće unapređenje jezika izvršili su Zeev Suraski i Andi Gutman, 1997. godine, preradivši kompletan glavni parser jezika. Dodavši mu novi naziv (PHP/FI), dodali su i podršku za bazu podataka čime je jezik dobio formu koju u manjoj ili većoj meri poseduje i danas.

U ovom trenutku, smatra se da oko 60% veb servera na svetu, funkcioniše na Apache tehnologiji, pa samim tim, u velikom broju slučajeva, podrazumeva i obradu podataka u PHP-u. Ako se ovome doda i činjenica da se PHP (doduše ne tako često) koristi i na drugim platformama (IIS), jasno je da je u pitanju jezik visoke funkcionalnosti.

Suraski i Gutman (ujedinjeni pod imenom Zend) i danas su glavni Developer-i i evangelisti jezika PHP. Puno ime PHP-a danas je PHP-Hypertext Processor.


Ručna instalacija PHP-a

Binarni paket sa instalacijom PHP-a se nalazi na adresi http://www.php.net/downloads.php. U okviru datoteke koje preuzmete nalazi se i uputstvo za instalaciju. Na primer, za Windows XP operativni sistem neophodno je uraditi sledeće:

  1. instalirati neki veb server (Apache ili Microsoft-ov Internet Information Server - IIS)
  2. instalirati PHP
  3. instalaciju PHP-a povezati sa serverom


Na gore pomenutoj adresi za preuzimanje instalacije PHP-a nalazi se nekoliko fajlova. Jedan od njih se naziva installer.exe. Ukoliko preuzmete ovaj fajl, njegovim pokretanjem će biti instaliran PHP i automatski podešeni neki od veb servera.  Drugi način instalacije je pomoću .zip fajla sa iste adrese, ali tada morate sami da podešavate i veb server. Kompletno uputstvo za instalaciju je sastavni deo ovog fajla.


Detaljan opis preuzimanja i instalacije WampServera

1. Pristupite adresi  http://www.wampserver.com/en/

2. Odaberite opciju 1. Download the latest release of Wampserver X

 

 

3. Selektujte hiprelink DOWNLOAD Wamp Server 2.0f

 

 

4. Odaberite lokaciju za snimanje na vašem disku i time započnite preuzimanje

5. Po završenom preuzimanju, pokrenite instalaciju skinutog programa.

 

 

6. Odabirom instalacionog foldera (što je jedini bitan interaktivni korak instalacije) odabraćete i folder gde će se nalaziti vaš MySql Server, Apache server kao i veb sadržaj.

 

 

7. Korake za postavljanje podrazumevanog pretraživača i mail servera, možete ostaviti na podrazumevanim vrednostima.

8. U poslednjem koraku, ostavite selektovan "Launch wamp server now" opciju kako bi ceo sistem automatski bio startovan.

9. U Tray-u će se pojaviti ikonica WampServera. Ukoliko svi servisi rade pravilno ikonica će izgledati ovako: 

Sve ostale varijante ikonice npr:   označavaju da neki od servera nije u stanju da funkcioniše. Ovo se obično dešava kada je neki od TCP/IP portova potrebnih za funkcionisanje servisa zatvoren (MySql server: 3306 ili Apache server: 80). Jedan od najčešćih uzročnika je Skype, pa ga treba isključiti (kasnije će ovaj problem biti elegantnije rešen).

10. Testirajte pravilnost rada veb servera tako što ćete:

  • Startovati veb pretraživač
  • Uneti u Address polje pretraživača adresu: http://localhost/


Rezultat bi trebalo da bude otvaranje sledeće strane:

 

 

Ovakva strana u pretraživaču znači da veb server funkcioniše.

Da bi proverili da li funkcionišu i ostali servisi (PHP i MySql) odaberite jedan od dva hiperlinka ispod podnaslova Tools (phpinfo() za PHP i phpmyadmin za MySql).

Ukoliko su rezultati dva prozora kao na sledećim slikama, znači da oba servisa (PHP i MySql respektivno) funkcionišu i time je instalacija uspešno izvršena.

 

 

 

 

Na kraju, poželjno je omogućiti u pretraživaču učitavanje keširanih strana iznova, kako bi se izbeglo da pretraživač ne prikaže promene urađene u kodu strane na kojoj radimo.

Da bi se ovo ostvarilo, potrebno je otići na Tools > Internet Options stavku padajućeg menija Internet Explorer-a, selektovati opciju Settings iz okvira Temporably Internet Files a zatim u novo otvorenom prozoru štiklirati stavku Every visit to the page. Ovo uradite čak i ako u ovom trenutku za to ne vidite poseban značaj.

 

 

 

 

Detaljan opis preuzimanja i instalacije Notepad-a++

1. Pristupite adresi http://notepad-plus.sourceforge.net/uk/site.htm
2. Odaberite opciju Download

 

3. Odaberite hiperlink Download Notepad++ executable files

 

4. Odaberite verziju npp.5.1.4.installer.exe

 

5. Nakon što ste preuzeli fajl, pokrenite instalaciju. Podesite nekoliko linearnih koraka (čitanje licence i izbor foldera) sa komponentama prema sledećoj slici (ukoliko već nije tako podešen).

 

6. Na zadnjem koraku instalacije, ostavite čekirano polje za startovanje aplikacije, i nakon startovanja, u samoj aplikaciji podesite jezik na PHP nakon čega je možete zatvoriti.


 


Rad sa konfiguracionim fajlovima

Wamp u svom korisničkom interfejsu omogućava jednostavan pristup svim konfiguracionim fajlovima servisa koji ispod njega funkcionišu. Da bi pristupili konfiguracionom fajlu za PHP, potrebno je:

  • Otvoriti opcije WampServer-a pritiskom na levi taster miša u Tray-u.
  • Odabrati opciju php.ini iz podmenija Config files

 

 

  • Promeniti željene opcije u konfiguracionom fajlu
  • Snimiti konfiguracioni fajl
  • Restartovati servise

 

 

Isto ovo možemo uraditi i na teži način, tako što ćemo otići u folder gde se nalazi PHP (a obično je to folder wamp/php) i ručno otvoriti i izmeniti php.ini fajl, ali i na jednostavniji tako što ćemo na korisničkom interfejsu Wamp-a odabrati opciju PHP settings i jednostavno uključiti ili isključiti željenu opciju.

Razumljivo da ovakav pristup važi samo kada je u pitanju WampServer okruženje.


Instalacija PHP-a na Linux operativnom sistemu

Skinite verziju PHP-a sa adrese http://www.php.net/downloads.php

 

 

Zatim, iz konzole, locirajte fajl koji ste preuzeli (ime fajla će verovatno biti: php5.x.x.tar.gz, mada tačan naziv zavisi od verzije PHP-a koju ste skinuli) i pozicionirajte se u taj direktorijum.

Raspakujte arhivu koju ste skinuli uz pomoć komande:

tar –xzf php5.x.x.tar.gz

Potom se premestite u folder koji se automatski kreirao (php5.x.x) i startujte instalaciju naredbom:

./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs –with-mysql=/usr/local/mysql


ili jednom od sledeće dve naredbe, ukoliko ne znate podatke o Apache serveru ili MySql serveru:

./configure –prefix=/usr/local/php –with-mysql=/usr/local/mysql
./configure –prefix=/usr/local/php


Ovakva instalacija podrazumeva da već imate instaliran Apache i MySql servere na računaru na kome se nalazi Linux. Zato instalaciji pridružujete putanje ove dve aplikacije.
Nakon uspešno izvršene instalacije, izvršite kompajliranje naredbom: make

i instalaciju naredbom: make install

 

Najbitnije iz ove lekcije:

  1. PHP je jezik koji se interpretira, te ne može raditi bez programa za interpretaciju.
  2. Većina sintakse PHP-a je identična sintaksi jezika C
  3. Najčešća upotreba PHP-a je u izgradnji dinamičkih HTML strana, odnosno veb aplikacija.
  4. PHP ne može emitovati HTML strane bez veb servera.
  5. PHP se može izvršavati na različitim veb serverima
  6. PHP kod može biti pisan u bilo kom alatu koji procesira tekst.
  7. Da bi dokument bio prosleđen PHP-u, mora imati ekstenziju .php
  8. Da bi skripta unutar dokumenta bila startovana, mora biti aktivirana PHP tagovima <?php ?> ili <? ?>
  9. Uz pomoć PHP-a nije moguće praviti animacije u pretraživaču.

Smatrate da je ova lekcija korisna?  Preporučite je. Broj preporuka:17


Molimo Vas unesite svoje podatke i dobićete pristup besplatnim lekcijama.

Ime: 
Prezime: 
Email: