ASP je dinamicki script jezik slican PHPu i sluzi isto kao i PHP za izradu dinamickih web aplikacija (sta god to bilo (forumi, blogovi, sajtovi, shoppinh cart...))
ASP je skracenica od Active Server Pages i kao takve izvrsavaju se na serveru na kojima je instaliran IIS, o kome je bilo reci.
kao sto je slucaj sa PHPom, i ASP vraca korisniku rezultat izvrsavanja ASP stranica.
ASP kod unutar HTML stranice se nalazi unutar <% i %>...
ajde da uradimo jedan jednostavan primer...
<html>
<head>
<title>ASP Test stranica</title>
</head>
<body>
Danas je: <%= Now() %>
</body>
</html>
ovaj kod ce, kao rezultat, vratiti korisniku trenutno vreme koje je na serveru na kojem se izvrsila stranica.
<%= "X" %> je isto kao i <% Response.Write("X") %> stom razlikom da kada stavite <%= "X" %> onda u tom delu ne moze da stoji nista vise. npr. ovo nije moguce.
<%
Response.Write("X") '// komentar je samo apostrof, ali ja ga koristim ovako jer mi se svidjaju // :)
a = b + c
Response.Write(a)
%>
Promenljive
u promenljivama se cuvaju podaci koji su potrebni za dalji tok programa.
u ASPu mozete da deklarisete promenljive tako sto napisete Dim ime_promenljive.
Note:
u VBu posle imena promenljive obavezno treba da se kuca As String ili as Integer. u ASPu toga nema... znaci, nista As Nesto...
takodje, ne morate da deklarisete promenljive sa Dim nego jednostavno, odjednom negde nasred stranice da izmislite neku promenljivu i da nastavite nesmetano sa radom.
ovo se ne preporucuje zato sto moze da bude uzrok problema prilikom debugovanja u nekim velikim projektima gde broj linija prelazi ljudske mogucnosti
ako ste ne sigurni i ne znate da li ste deklarisali promenljivu ili ne, na pocetak stranice napisite Option Explicit i od tada, svaku promenljivu cete morati da deklarisete. ako to pak ne uradite, 'kompajler' ce vas na vreme upozoriti, pri pokretanju stranice.
manipulisanje sa promenljivama sigurno znate kako se obavljaju.
npr. obicno sabiranje:
<%
Dim a, b, c
a = b + c
Response.Write(a)
%>
sve se svodi na isto.
Uslovi
uslovi postoje kako program, aplikacija ne bi bila monotona i isla samo u jednom pravcu.
uslovi mogu i treba da promene redosled izvrsavanja aplikacije kada je to neophodno.
jedan od najpoznatijih uslova je IF.
sintaksa IF uslova"
<%
If Session("UserName") <> "Admin" Then
Response.Redirect("access_denied.asp")
Else
Response.Redirect("welcome.asp")
End If
%>
ovaj kod proverava da li ste admin i ako jeste prebacuje vas na stranicu welcome.asp, u suprotnom vam prikazuje access_denied.asp stranicu...
jos jedan 'derivat' IF uslova je IfElse
sintaksa IFELSE Uslova
<%
If Session("UserName") = "Admin" Then
Response.Redirect("admin/control_panel.asp")
ElseIf Session("UserName") = "Moderator" Then
Response.Redirect("welcome_mod.asp")
Else
Response.Redirect("access_denied.asp")
End If
%>
ovaj deo koda, proverava da li je Session promenljiva UserName jednaka Admin i ako jeste redirektuje korisnika na control panel, ako je korisnik Moderator onda prikazuje welcome moderatoru, a ako nije nista od toga (Admin, Moderator) salje ga na access_denied.asp stranicu. sto znaci, zabranjen pristup osim Adminima i Moderatorima...
svaki If mora da ima svoje End If
za ovako nesto, posebno ako ima vise uslova ne treba koristiti If Then Else nego treba koristiti Select Case
sintaksa SELECT CASE uslova
<%
Dim msg
Select Case msg
Case "Yes"
Response.Write("Kliknuli ste na Yes!")
Case "No"
Response.Write("Kliknuli ste na No!")
Case "Maybe"
Response.Write("Kliknuli ste na Maybe!")
End Select
%>
Petlje
sa petljom mozete jedan blok koda izvrsavati vise puta.
pomenucu Do, For...Next
sintaksa DO petlje
<%
Dim x
x = 4
Do Until x =5
Response.Write(x)
x = x + 1 '// ako ne stavite ovo povecavanje, vasa petlja nikada nece stati jer uslov nece biti zadovoljen i dovescete vasu petlju u DeadLoop, InfiniteLoop kako zelite... vrtece se tako do besvesti, a to nije ono sto zelimo...
Loop
%>
Do Until petlja ce ici sve dok uslov nije zadovoljen. kako se uslov zadovolji (rezultat uslova bude TRUE), petlja prestaje sa radom (strajkuje)
Sintaksa za FOR...NEXT petlju
<%
Dim i
For i = -3 To 6
Response.Write("<font size=" & i & ">Hello World</font><br>")
Next i '// moze i bez i. znaci samo Next
%>
For petlja ide od pocetne vrednosti (u ovom slucaju -3) pa sve do 6 i u tom njenom prolazu, odradjuje neki deo koda... ako vi u tom kodu vratite vrednosti promenljive i na -3 ili je izjednacite sa 6, For petlja ce stati.
za sada cemo ovde stati i ostavicu vas da malo pronjuskate po ovome da vidite kako ovo radi... nastavicemo za koji dan .
|