zavrsili smo osnove ASP i sada cemo preci na objekat Request koji se cesto koristi pri izradi ASP stranica.
ASP sadrzi pet primarnih objekata.
Request, Response, Application, Session i Server
Request - Daje podate o posetiocu
Response - Metode i svojstva koje se koriste za prikaz posetiocu (odgovor na Request)
Application - Slicno kao Session samo sto se odnosi na celu aplikaciju. Rad sa svojstvima koja upravljaju Web
stranicom
Session - Metode i svojstva za jednog odredjenog korisnika
Server - Skup komponenata na serveru i podesavanje servera
Objekat Request
pomocu Request objekta, mozete da pristupate podacima korisnika koji je trenutno na vasoj web prezentaciji.
sledeci kod vam objasnjava kako da prikazete na vasoj web strani IP korisnika
<%
Response.Write(Request.ServerVariables("REMOTE_HOST"))
%>
kada imate objekte u formi za npr. log in. na neki nacin trebate da uzmete to sto je korisnik uneo.
Objekat Request ce vam pomoci u tome.
kada imate neku ovakvu formu:
<form name="login" method="post" action="login.asp">
<input type="text" name="username"><br>
<input type="text" name="password"><br>
<input type="button" name="Submit">
</form>
kada korisnik popuni neku ovako formu i kada klikne na Submit, forma ce 'pozvati' login.asp (sto zapravo moze
da bude i ista stranica u kojoj se nalazi forma) i preuzece podatke koje je korisnik napisao.
pre nego sto napisem kod koji bi resavao ovaj problem, moram da kazem sledece:
primetili ste da sam u zaglavlju forme napisao method="post". postoji jos i method="get". razlika izmedju ove
dve metode je sledeca:
kada stavite POST, sve podatke koje je korisnik poslao idu 'skriveno' i prihvataju se preko Request.Form
metode.
kada stavite GET, sve podatke koje je korisnik poslao ide preko linka web browsera i tako da gledanjem u link,
mozete videti sta je korisnik napisao. kada se radi o nekim informacijama tipa login sifra... ne preporucuje
se metoda GET nego POST...
metodom GET, podatke primate preko Request.QueryString metode.
kod na login.asp stranici za metodu POST bi ovako izgledao:
<%
If NOT isEmpty(Request.Form("Submit")) Then
dim uname, pword, sql
uname = Request.Form("username")
pword = Request.Form("password")
sql = "SELECT * FROM korisnici WHERE username='" & uname & "' AND " password='" & pword & "';"
rs.Open sql, conn
If rs.EOF Then
Response.Write("Podaci se ne slazu sa onima iz baze podataka!")
Else
Response.Write("Dobrodosli " & uname)
End If
Response.Redirect("home.asp")
End If
%>
NAPOMENA:
posto jos nismo radili Connection i Recordset objekte (rs i conn), za sada sam ih ovako napisao, ali se
pretpostavlja da su validne reference na objekte tipa Recordset i Connection. O istim cemo pricati posle.
isti ovaj kod sa GET metodom bi ovako izgledao:
<%
If NOT isEmpty(Request.QueryString("Submit")) Then
dim uname, pword, sql
uname = Request.QueryString("username")
pword = Request.QueryString("password")
sql = "SELECT * FROM korisnici WHERE username='" & uname & "' AND " password='" & pword & "';"
rs.Open sql, conn
If rs.EOF Then
Response.Write("Podaci se ne slazu sa onima iz baze podataka!")
Else
Response.Write("Dobrodosli " & uname)
End If
Response.Redirect("home.asp")
End If
%>
Kolekcija ServerVariables
ova kolekcija sluzi za ispisivanje podataka o korisniku koji se nalazi na vasoj web prezentaciji.
izdvojicu one najpotrebnije promenljive kao i opis istih....
REMOTE_ADDR - adresa racunara koji pravi zahtev
REMOTE_HOST - ime domena racunara (textualna IP adresa, ime providera) ako nema, onda pise samo IP adresa
LOCAL_ADDR - adresa servera
HTTP_REFERER - stranica preko koje je korisnik dosao na tekucu, ako je pritisnuo link
HTTP_USER_AGENT - vrsta citaca i verzija kao i OS korisnika
Kolekcija Cookies
kolacici sluze da zapisu neku informaciju o korisniku. npr, username pa da se sledeci put korisnik ne mora da
loguje nego je to automatski ili zapamti interesovanja korisnika pa ga redirektuje na adresu koja ga zanima.
kolacici postoje u JavaScriptu, a mogu se koristiti i direktno iz ASP-a.
ako zelite da napravite autologin ovakav kolacic bi vam bio od pomoci
Request.Cookies("UserName") = rs("username")
tako ce se u kolacic zapisati Username korisnika za sledecu posetu vasoj web prezentaciji
kolacici mogu da budu i slozeni
Request.Cookies("Company")("UserName") = rs("username")
Request.Cookies("Company")("URL") = rs("URL")
provera da li su kolacici slozeni se proverava preko svojstva HasKeys. ako je HasKeys True, kolacic je slozen,
ako je False, kolacic nije slozen
If Request.Cookies("Company").HasKeys Then
Response.Write("Ovaj kolacic ne da je slozen nego strasno! ")
Else
Response.Write("Ovaj kolacic nazalost nije slozen! ")
End If
zavrsili smo Request objekat. sledeci put prelazimo na Response.
sta vam nije jasno slobodno pitajte. ako ste nasli neku gresku, prijavite pa cu ispraviti...
to be continued...
|