ZESOI, FER - ak. god. 2002/03, prof. dr. sc. B. Jeren, mr. sc. P. Pale

Podatkovni višemedijski prijenos i računalne mreže  
 
Naslovnica 
Plan nastave 
Predavanja 
Seminari 
Vježbe 
Studentski radovi 
Nastavnici 
Studenti 
Obavijesti 
Ispit 
Arhiva 

Aktualno 

Prve tri vježbe potrebno je predati do 28.11.2003.

2. laboratorijska vježba
JavaScript i CGI

Svrha vježbe:

Stjecanje iskustva sa server-side te client-side skriptama te programima. Razlikovanje server-side te client-side implementacija.

Zadatak

  1. Napraviti stranicu koja koristi elemente formulara: polja za unos, gumbe za submit i resetiranje formulara. Cilj je stvoriti sučelje prema programu na poslužitelju koji provodi matematičku operaciju zbrajanja dva broja. Komunikacija s programom se ostvaruje kroz CGI sučelje GET metodom.
  2. Dodati na stranicu iz 1. zadatka provjeru unosa parametara, tj. spriječiti JavaScriptom obavljanje submit akcije dok korisnik ne unese oba broja koja želi zbrojiti. Upozoriti korisnika koji od brojeva nije unešen (prvi ili drugi ili oba). Za maksimalne bodove napraviti provjeru da li je korisnik unio broj ili nije (npr. provjeravati da li je unešen niz slova a ne broj).

Upute - CGI

CGI je kratica za Common Gateway Interface. On omogucava izvršavanje funkcija na strani servera. Pokretanje tih funkcija se vrši tako da korisnik u svojem web pregledniku pošalje zahtjev za odgovarajucim CGI programom ili skriptom (obicno odabirom nekog linka ili "submit" tipke). Podaci koje je korisnik unio unutar forme prenose se kao dodatni parametri i postaju ulazni parametri tražene CGI skripte. CGI programi ovisno o podacima koje je korisnik u web pregledniku unio generiraju odredene rezultate koje vracaju natrag korisniku (najcešce u formi HTML dokumenta, ali nije nužno).

Za pisanje CGI programa i skripti obicno se koristi C, C++, Perl, TCL, shell skripte, Python ili nešto trece. CGI programi (ili skripte) mogu se pokretati samo iz direktorija koji su za to namijenjeni. Naime, u konfiguraciji web servera (npr. Apache) mora biti omoguceno da se u nekom direktoriju mogu izvršavati CGI skripte (ili programi). Obicno se omogucava da se CGI skripte izvršavaju iskljucivo u cgi-bin poddirektoriju web servera (no, za potrebe ovih vježbi svaki ce student moci pokretati CGI skripte u svom vlastitom direktoriju). Isto tako, potrebno je podesiti da se skripte smiju izvršavati (chmod naredba u UNIX-u).

Upute - JavaScript

JavaScript je objektno orjentirani skriptni jezik. Skripte se dodaju bilo u zaglavlje HTML dokumenta u <SCRIPT> tag ili se dodaju samo event handleri (kao u primjeru) koji se direktno pozivaju. Da bi skripta mogla utjecati na neki element u stranici njemu mora biti definiran parametar "name" te je tada (DOM) referenca takvog objekta document.name.

Primjer vulgaris: izrada aktivnog gumba (najcešca primjena):

<a href="link" onmouseover="javascript:document.ime.src='slika2.gif';" onmouseout="javascript:document.ime.src='slika1.gif';"><img src="slika1.gif"
name="ime"></a>

onmouseover i onmouseout - event handleri (obrada dogadaja)
document.ime - DOM referenca slike (slika kao objekt)
document.ime.src - polje objekta slike (sadrži URL slike)
slika1.gif i slika2.gif - poželjno iste velicine

Primjeri

CGI - elementi formulara | primjer formulara za zbrajanje
CGI skripta koju koristimo u vježbi se nalazi na http://www.zesoi.fer.hr/cgi-bin/zbroji.cgi (action FORM taga) te prima dva parametra: prvi i drugi.

JavaScript - primjeri provjere formulara:
jedan | dva | tri | cetiri
Proučite skripte iz ovih stranica te prema njima napravite provjeru da li je korisnik unio nešto u polja formulara. Također, napraviti provjeru da li je korisnik unio broj (vidjeti po uputama za JavaScript kako provjeriti da li je nešto broj ili nije - funkcije parseInt, parseFloat i isNaN u Math objektu)

Putokazi


copyright - Zadnja izmjena: 2003-11-11 10:12 by Zvonko Kostanjčar