SlideShare a Scribd company logo
1 of 14
Baze podataka                                                                             VBScript




                                               UVOD


        Baze podataka postoje da bi služile potrebama aplikacija. Aplikacija je, na drugoj strani,
jedinica softvera koja postoji da bi služila potrebama neke aktivnosti. U savršenom svetu, potrebe
aktivnosti određuju zahteve aplikacije, a potrebe aplikacije određuju zahteve baze podataka.

       Osnovna ideja baze podataka je da čuva podatke na organizovan način. To donosi dve koristi.
Prvo, podaci su dostupni za raznovrsna korišćenja unutar nekog poslovnog sistema. Drugo, s
obzirom na to da baza podataka ima poznatu strukturu, softverski sistem u kome je smeštena može
da pruži moćne alatke koje proširuju mogućnosti korišćenja.

        Za monger Web programere početak rada sa bazama podataka je takođe i početak serverskog
programiranja. Umesto slanja fiksnog sadržaja (Web stranica) čitaču i programiranja čitača da
prilagodi prikaz, Web aplikacija, koja radi nad bazama podataka, programira Web server da
prilagodi sadržaj pre nego što ga pošalje čitaču. Prilagođavanje može biti jednostavno, tako što će se
svoditi na ubacivanje vrednosti iz upita, ili složeno kao u slučaju generisanja jedinstvene stranice za
svaku kombinaciju posetioca Weba i zahteva.

      Razvijanje skriptova – kratkih blokova programskog koda visokog nivoa – koji se izvšavaju
na Web serveru dosta se razlikuju od razvijanja skriptova koji se izvršavaju na čitaču.

           •    Preovlađujući jezik za programiranje skriptova, koji se izvršavaju na čitaču, je
                JavaScript. Za serverske skriptove, to je VBScript kod Microsoft Web servera, a za
                većinu drugih to su Perl, C ili Java.

           •    Većina skriptova na strani čitača odnose se na pitanja vizuelnog predstavljanja. Oni
                nemaju pristup nijednom drugom delu sistema posetioca Weba, osim prikazu na
                ekranu. Serverski skriptovi mogu da pristupe svakom resursu na samom serveru i na
                mreži (pod uslovom, naravno, da je administrator servera odobrio takav pristup). To
                uključuje datoteke, baze podataka, sisteme elektronske pošte, štampače i faks servere.

           •    Izvršavanje serverskih skriptova troši više serverskih resursa i predstavlja veći
                sigurnosni rizik od isporučivanja jednostavnih Web stranica. Iz tih razloga, dobijanje
                dozvole da koristite resurse za primenu serverskog skripta, obično je teže, skuplje, ili
                resrtiktivnije od dobijanja Web prostora bez mogućnosti korišćenja skripta.




                                                   1
Baze podataka                                                                          VBScript




                                            VBScript

       VBScript (Visual Basic Script) je uveden od strane Microsoft-a u Internet Explorer-u,
počevši od verzije 3.0, a zasnovan je na Microsoftovom Visual Basic programskom jeziku. Dizjniran
za laku upotrebu na Internet-u, VBScript omogućuje potpuno automatizaciju i kontrolu nad web
stranama. Zajedno sa ActiveX kontrolama omogućava široku primenu dinamike u web dizajnu.
VBScript se može koristiti i na klijentskoj i na serverskoj strani.

        VBScript ne podržava striktno definisane tipove podataka. VBScript funkcije mogu se
nalaziti bilo gde unutar HTML koda, uključujući i HEAD i BODY sekcije. Preporučljivo je da se sve
funkcije deklarišu na istom mestu, i to uglavnom u BODY sekciji.

       Veći deo onog što važi kod Visual Basic for Applications, preneće se na VBScript. Međutim,
postoje i bitne razlike:

   -   Nedostatak vizuelnog aspekta. Ne može da prikaže prozore ili okvire za dijalog, ne podržava
       čak ni funkcije MsgBox ili InputBox. Naravno, script može da ispisuje HTML da bi napravio
       željeni vizuelni prikaz u čitaču Web posetioca.

   -   Implicitno definisanje promenljivih. Obične promenljive ne zahtevaju eksplicitno
       definisanje u VBScriptu. Da bi se napravila nova promenljiva, dovoljno je početi je koristiti.
       Sa druge strane, nizove je neophodno deklarisati pre početka korišćenja.

   -   Slabo tipizirane promenljive. VBScript podržava samo dva tipa promenljivih: objekte (lako
       ih je prepoznati) i varijante (automatski preuzimaju karakteristike podataka od bilo koje
       vrednosti koje se u njih pohranjuju). Da bismo “primorali” promenljivu da bude određenog
       tipa, potrebno je upotrebiti neku od funkcija za konverziju tipova.

   -   Objekti koji su jedinstveni za VBScript. Većina objekata se odnosi na pristupanje
       datotekama i zamenjuju tradicionalne komande, kao što su Open, Line Input, Print, Close,
       Dir$, FileAttr, i FileDateTime.

   -   Opseg promenljivih. Promenljive napravljene unutar potprograma i funkcija dostupne su
       samo unutar tih struktura i unutar potprograma ili funkcija koje pozivaju. Da bi se
       promenljiva ili konstanta učinila dostupnom za sav kod serverskog skripta u Web stranici,
       potrebno ju je definisati izvan svih funkcija ili potprograma.

   -   Formatirajuće funkcije. U VBScriptu se umesto Format koriste znatno specifičnije naredbe.
       Argumenti između uglastih zagrada su opcioni

   -   Dodatne funkcije za stringove, kojih nema u drugim oblicima Visual Basica. Većina tih
       string funkcija podseća na funkcije koje su prethodno bile dostupne samo u Perlu. U narednoj
       tabeli navedene su nove funkcije koje omogućavaju bolje rukovanje stringovima i nizovima:


                                                 2
Baze podataka                                                                               VBScript



       Funkcija                    Sintaksa                        Opis

        Filter           Filter (ulazniStringovi,vrednost   Vraća niz koji sadrži sve
                         [, uključuje                       elemente drugog niza koji
                         [, modelPoređenja]])               sadrže (ili ne sadrže)
                                                            navedeni podstring.

        InstrRev         InStrRev(string1, string2          Vraća poziciju jednog
                         [, start                           stringa unutar drugog,
                         [, modelPoređenja]])               pretražujući zdesna ulevo.

        Join             Join(lista                         Kopira sve elemente niza u
                         [, graničnik])                     jedan string, opciono
                                                            razdvajajući sve elemente
                                                            niza zadatim znakom.

        Replace          Replace(izraz, pronaći,            U datom string izrazu,
                                  zamenitiSa                zamenjuje jedan podstring
                         [, start                           drugim i zatim vraća
                         [, brojanje                        rezultat.
                         [, modelPoređenja]]])

        Split           Split(izraz                         Kopira razdvojeni string u
                        [, graničnik                        jednodimenzionalni niz.
                        [, brojanje                         Svaki put kada Split pronađe
                        [, modelPoređenja]]])               graničnik, počinje sa
                                                            kopiranjem u novi elemenat
                                                            niza.

        StrReverse       StrReverse(string)                 Obrće redosled znakova u
                                                            stringu i vraća rezultat – na
                                                            primer, StrReverse(''abc'')
                                                            vraća ''cba''.




        U nastavku prikazane su definicije samo nekih (od mnogo) procedura VBScripta. Naveden je
opis, spisak parametara (ukoliko ih ima), povratna vrednost (ukoliko je u pitanju funkcija) i primer
upotrebe svake procedure.




                                                      3
Baze podataka                                                                                   VBScript




         The VarType function returns the following values:


         Constant             Value   Description

         vbEmpty                0     Empty (uninitialized)

         vbNull                 1     Null (no valid data)

         vbInteger              2     Integer

         vbLong                 3     Long integer

         vbSingle               4     Single-precision floating-point number

         vbDouble               5     Double-precision floating-point number

         vbCurrency             6     Currency

         vbDate                 7     Date

         vbString               8     String

         vbObject               9     Automation object

         vbError                10    Error

         vbBoolean              11    Boolean

         vbVariant              12    Variant (used only with arrays of Variants)

         vbDataObject           13    A data-access object

         vbByte                 17    Byte

         vbArray              8192    Array




                                       STRINGOVI

Stringovi su textualni tip podataka (niz znakova)

Vrste :
Lenght                                    Len(var)                     Broj znakova (dužina riječi)
Lower Case                               Lcase(var)                    Ispisuje riječ malim slovima
Uper Case                                Ucase(var)                    Ispisuje riječ malim slovima
Left                                      Left(var)                   Pretražuje riječ od lijeve strane


                                                     4
Baze podataka                                                                                       VBScript

Right                                            Right(var)                      -||- od desne strane
Middle> 1.parametar-string s kojim                Mid(var)                           -||- od sredine
radimo, 2. parametar-pozicija
odakle uzimamo, 3.parametar –
broj znakova koliko uzimamo
Replace (varijabla,''što'',''u što'',            Replace()                   Jedan dio stringa zamjeni s
pozicija od kojeg mjesta, koliko                                                       drugim
promjena(ako je –1, onda mijenja
sve riječi), vrste traženja
     0- binarno
     1- tekstualno
     2- baza podataka
StrReverse                                  StrReverse(var)                     Okreće riječi naopako
String                                  String(koliko ponavljanja, ascii    Više puta ispisuje slovo koje
                                                    kod)
                                                                               smo zadali ascii kodom
Asc                                              ASC()                       Traženje ascii kodova: A->65
CHR                                              CHR()                           Obrnuto od ascii 65->A
SPACE                                           Space()                         Broj razmaka u msgboxu
Trim                                             TRIM()                    Izbacuje razmake sa svih strana
Ltrim                                            Ltrim()                       Izbacuje razmake sa lijeve
                                                                                         strane
Rtrim                                              Rtrim()                    Izbacuje razmake sa desne
                                                                                         strane
Lower Bound                                    Lbound(niz)                      Vraća najniži index u nizu
Uper Bound                                     Ubound(niz)                      Vraća najviši index u nizu

Za ostalo pogledati VBScript dokumentaciju.

Primjer 1 :
<html>
<head>


<script language="vbscript">
   <!--
  sub window_onload()

         a="Bok ljudovi ! "

             document.write "Len-broj slova = " & len(a) & "<br>"
             document.write "LCase-mala slova = " & lcase(a) & "<br>"
             document.write "UCase-velika slova = " & ucase(a) & "<br>"

        c = left(a,4)
        d = right(a,9)
        document.write "Lijevo = " & c & "<br>"
        document.write "Desno = " & d & "<br>"
        document.write "Sredina rijeci = " & mid(a,3,5) & "<br>"
      document.write " Promjena rijeci = " & replace(a
,"ljudovi","slonovi",1,-1,1) & "<br>"
        document.write " Promjena taga italic u bold = " &
replace("<i>Italic</i>","i>","b>") & "<br>"
        document.write " Okretanje rijeci naopako = " & StrReverse(a) & "<br>"



                                                           5
Baze podataka                                                          VBScript


        document.write    " Ponavljanje vise puta = " & String(3,13) & "<br>"
        document.write    " ASCII kod od 'A' = " & asc("A") & "<br>"
        document.write    " 65 u ASCII kodu je = " & chr(65) & "<br>"
        document.write    " Brisanje razmaka &nbsp; &nbsp; &nbsp; &nbsp; bok
ljudovi &nbsp; &nbsp;     &nbsp; &nbsp;    ! u = " & trim(a) & "<br>"


            msgbox " Razmaci = " & space(20) & "Kraj"

            end sub

    //-->
      </script>

  </head>
      <body bgcolor="#658945"> <center>
      </center>
      </body></html>



Primjer 2:
<html>
<head>


<script language="vbscript">
   <!--
            sub window_onload()

                a = "Nenad;Mario;Bojan;Mladen;Tomislav"
                imena = split(a,";")

                for i = LBound(imena) to UBound(imena)

                document.write   imena(i) & "<br>"

               next
         document.write "<hr width=10% align=left>"

         for each ime in imena
          document.write ime & "<br>"
          next
               end sub

         //-->
         </script>

      </head>
      <body>
         </body></html>




                                            6
Baze podataka                                                                   VBScript




                       Pretraživanje stringova

InStr(pozicija,gdje,što, koja komparacija(0-binarno, 1-textualno, 2- baza podataka)

InStrRev(gdje,što,pozicija(-1),koja komparacija) - isto kao InStr, samo pretražuje
   Odozada

Primjer:
<html>
<head>


<script language="vbscript">
   <!--

                sub window_onload()


   a= " Dobro dosli ljudovi !"

document.write " Kljucne rijeci = " & a       & "<br>"

 document.write " Promjena taga italic u bold = " &
replace("<i>Italic</i>","i>","b>") & "<br>"

  document.write " Promjena rijeci = " & replace(a ,"ljudovi","slonovi",1,-1,1)
& "<br>"


   document.write " Trazimo na kojem mjestu pocinje rijec dosli = " &
InStr(1,a,"dosli",1) & "<br>"

 document.write " Trazimo na kojem mjestu pocinje rijec dosli odozada = " &
InStrRev(a,"dosli",-1,1) & "<br>"

  end sub
      //-->
      </script>
      </head>
      <body bgcolor="#658945"> <center>
      </center>
      </body></html>




                                             7
Baze podataka                                                           VBScript


                                  Nizovi stringa
Split- podijeli

Split(a,'';'')

a – varijabla,tj.ime niza koji razdvajamo

-razdvaja varijablu koja sadrži neko nabrajanje razdvojeno sa ; u niz

Primjer:
<html>
<head>


<script language="vbscript">
   <!--
            sub window_onload()

                 a = "Nenad;Mario;Bojan;Mladen;Tomislav"
                 imena = split(a,";")

                 for i = LBound(imena) to UBound(imena)

                 document.write   imena(i) & "<br>"

               next
         document.write "<hr width=10% align=left>"

         for each ime in imena
          document.write ime & "<br>"
          next
               end sub

         //-->
         </script>

       </head>
       <body>
          </body></html>


Primjer 2:
<HTML>
<TITLE>Current Date/Time 2</TITLE>
<HEAD>


<script language=vbscript>
<!--

           sub b1_onclick()



                                             8
Baze podataka                                                                  VBScript




baza="Drazen;Davor;Nenad;Darko;Tomislav;Mario;Pero;Jura;Stevo;Branko;Branimir;Kr
eso;Bojan;Mladen"

                unos=t1.value

                imena = split(baza,";")


                  for each ime in imena

                     if ucase(ime)=ucase(unos) then
                          found = true
                            exit for
                       else
                          found = false

            end if
              next

                  if found then
                   t2.value = "Osoba postoji !"
                     else
                     t2.value = "Osoba ne postoji !"
                     end if

                     end sub
//-->
        </script>


</head>
<body bgcolor=black text=white onload="t1.focus">
<br><br><br><br><br><br>
<center>
<table width=50% height=20% bgcolor=blue border=2 bordercolorlight="#c0c0c0"
bordercolordark="#505050">
<tr><td align=center><b>Unesite ime :</td>
<td align=center>
<input       name="t1" type="text" value=""></td><td>&nbsp;
<input type="button" name=b1 value="Provjeri !">
</td></tr><tr><td></td><td align=center><b>Potvrda !<br>
<input name="t2" type="text" value="" >
</td></tr></table>

</center>
</body>
</html>




                                            9
Baze podataka                                                                    VBScript


                       Funkcije Array,Join,Filter


Join
Spajanje slova(riječi), tj redove u rečenicu, tj niz u rečenicu

Var=Join(var1,'','')
                        Var1- određena varijabla,tj niz


Array

- funkcija za stvaranje niza
         Primjer array i join :
<html>
<head>


<script language="vbscript">
   <!--
   sub window_onload()

                a=array("Nenad","Pero","Jura","Mloaden")

              for each x in a
                document.write x & "<br>"
                  next

                    b=join(a,", ")

 document.write "<hr width=20% align=left>" & b

                 end sub
                     //-->
         </script>

</head>
      <body bgcolor="#658945">
      </body></html>




Filter
                -    iz niza izdvaja samo neke elemente, i od toga odvojenoga niza stvara
                     novi niz

                                                 10
Baze podataka                                                         VBScript


                -    var=Filter(niz,''što'',true,komparacija)




Primjer 1:
<html>
<head>


<script language="vbscript">
   <!--
   sub window_onload()

            a=array("Proanima d.o.o","Gramip d.o.o","Pik Vrbovec d.o.o","Agritec
d.o.o","Pliva d.d")

                    x=inputbox("unesi koju vrstu firme treba")

b=filter(a,x,true,1)

                    for each c in b

                    isp = isp & c & "<br>"

                    next

                    prv.innerhtml = isp

                 end sub
                    //-->
         </script>

 </head>
      <body bgcolor="#658945">

          <p id=prv></p>

      </body></html>




                                           VARIANTI
Typename – javit će ime stringa
IsArray – da li je varijabla niz
IsNumeric – da li je varijabla broj
IsDate – da li je varijabla datum
IsEmpty – da li je polje ili neka varijabla prazna
IsNull – posebno stanje kada je polje neupotrebljivo
          -različito od empty- tj. Polje nije upotrebljivo


                                                  11
Baze podataka                                                          VBScript

Primjer :
<html>
<head>


<script language="vbscript">
   <!--
   sub window_onload()


   a=12.6545465465465465465465465456465465
   document.write vartype(a) & "<br>"
   document.write typename(a) & "<br>" & "<hr width=20% align=left>"
   b=#19/9/2001#

document.write vartype(b) & "<br>"
   document.write typename(b) & "<br>" & "<hr width=20% align=left>"

   c=array("1","2","3")

   if isarray(C) then

      document.write "IsArray--Je, to je niz" & "<br>" & "<hr width=20%
align=left>"
else

    document.write "Ne, to nije niz" & "<br>" & "<hr width=20% align=left >"
   end if

    if isdate(b) then

      document.write "<body bgcolor=black text=green>" &"IsDate--Je, to je datum"
& "<br>" & "<hr width=20% align=left >"
else

    document.write "Ne, to nije datum" & "<br>" & "<hr width=20% align=left > "
   end if

         if isnumeric(a) then

      document.write "IsNumeric--Je, to je broj" & "<br>" & "<hr width=20%
align=left>"
else

    document.write "Ne, to nije broj" & "<br>" & "<hr width=20% align=left>"
   end if

   if isempty(k) then

   document.write "IsEmpty--Datum nije upisan" & "<br>" & "<hr width=20%
align=left>"

    end if


         l=null



                                       12
Baze podataka                                                                VBScript


         if isnull(l) then
         document.write "IsNull--Je, null je" & "<br>" & "<hr width=20% align=left>"
                 end if

                 end sub
               //-->
         </script>

</head>
      <body bgcolor="#658945">
         <center>
           <p id=prv></p>
      </body></html>



                                 Dinamički niz
     Dinamički niz je niz u kojem u tijeku izvođenja programa mijenjamo broj elemenata.

DIM(6) – fiksni niz od 6 elemenata
DIM() - fleksibilan niz sa mogućom promjenom

ReDim Preserve var(broj elemenata u varijabli)
ReDim Preserve a(Ubaund(a)+1) ->trenutni broj elemenata kojem dodajeno još jedan

Primjer:
<html>
<head>


<script language="vbscript">
   <!--
   sub window_onload()


   dim a()
   redim preserve a(5)
   ReDim Preserve a(UBound(a)+1)

   document.write Ubound(a) & "<br>"

                 end sub
               //-->
         </script>

      </head>
      <body bgcolor="#658945">
         <center>
         <p id=prv></p>
      </body></html>




                                           13
Baze podataka                                                                       VBScript




                                      Z A K LJ U Č A K


U ovom eseju nije bilo dovoljno mesta za potpuni opis programskog jezika VBScript. Ipak,
kompletan priručnik dostupan je iz raznih izvora sa Weba (adresa
http://msdn.microsoft.com/scripting)




                                               14

More Related Content

Similar to Vb script (13)

Programski jezik java
Programski jezik javaProgramski jezik java
Programski jezik java
 
Programski jezik java
Programski jezik javaProgramski jezik java
Programski jezik java
 
Putting REST to rest with gRPC
Putting REST to rest with gRPCPutting REST to rest with gRPC
Putting REST to rest with gRPC
 
Vert.x - Mihovil Rister, Javantura
Vert.x - Mihovil Rister, JavanturaVert.x - Mihovil Rister, Javantura
Vert.x - Mihovil Rister, Javantura
 
Javantura Zagreb 2014 - Vert.x 1.3 - Mihovil Rister
Javantura Zagreb 2014 - Vert.x 1.3 - Mihovil RisterJavantura Zagreb 2014 - Vert.x 1.3 - Mihovil Rister
Javantura Zagreb 2014 - Vert.x 1.3 - Mihovil Rister
 
Vert.x - asinkroni skalabilni i poliglotni framework nove generacije
Vert.x - asinkroni skalabilni i poliglotni framework nove generacijeVert.x - asinkroni skalabilni i poliglotni framework nove generacije
Vert.x - asinkroni skalabilni i poliglotni framework nove generacije
 
GraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisiGraphQL & Laravel - Efikasni API servisi
GraphQL & Laravel - Efikasni API servisi
 
Cyfer
CyferCyfer
Cyfer
 
Uvod_u_C++.pdf
Uvod_u_C++.pdfUvod_u_C++.pdf
Uvod_u_C++.pdf
 
C# predavanja
C# predavanjaC# predavanja
C# predavanja
 
Aspektno Orijentirano Programiranje
Aspektno Orijentirano ProgramiranjeAspektno Orijentirano Programiranje
Aspektno Orijentirano Programiranje
 
C++ funkcije
C++ funkcijeC++ funkcije
C++ funkcije
 
JavaCro'15 - Java parallelization - Zlatko Sirotić
JavaCro'15 - Java parallelization - Zlatko SirotićJavaCro'15 - Java parallelization - Zlatko Sirotić
JavaCro'15 - Java parallelization - Zlatko Sirotić
 

Vb script

  • 1. Baze podataka VBScript UVOD Baze podataka postoje da bi služile potrebama aplikacija. Aplikacija je, na drugoj strani, jedinica softvera koja postoji da bi služila potrebama neke aktivnosti. U savršenom svetu, potrebe aktivnosti određuju zahteve aplikacije, a potrebe aplikacije određuju zahteve baze podataka. Osnovna ideja baze podataka je da čuva podatke na organizovan način. To donosi dve koristi. Prvo, podaci su dostupni za raznovrsna korišćenja unutar nekog poslovnog sistema. Drugo, s obzirom na to da baza podataka ima poznatu strukturu, softverski sistem u kome je smeštena može da pruži moćne alatke koje proširuju mogućnosti korišćenja. Za monger Web programere početak rada sa bazama podataka je takođe i početak serverskog programiranja. Umesto slanja fiksnog sadržaja (Web stranica) čitaču i programiranja čitača da prilagodi prikaz, Web aplikacija, koja radi nad bazama podataka, programira Web server da prilagodi sadržaj pre nego što ga pošalje čitaču. Prilagođavanje može biti jednostavno, tako što će se svoditi na ubacivanje vrednosti iz upita, ili složeno kao u slučaju generisanja jedinstvene stranice za svaku kombinaciju posetioca Weba i zahteva. Razvijanje skriptova – kratkih blokova programskog koda visokog nivoa – koji se izvšavaju na Web serveru dosta se razlikuju od razvijanja skriptova koji se izvršavaju na čitaču. • Preovlađujući jezik za programiranje skriptova, koji se izvršavaju na čitaču, je JavaScript. Za serverske skriptove, to je VBScript kod Microsoft Web servera, a za većinu drugih to su Perl, C ili Java. • Većina skriptova na strani čitača odnose se na pitanja vizuelnog predstavljanja. Oni nemaju pristup nijednom drugom delu sistema posetioca Weba, osim prikazu na ekranu. Serverski skriptovi mogu da pristupe svakom resursu na samom serveru i na mreži (pod uslovom, naravno, da je administrator servera odobrio takav pristup). To uključuje datoteke, baze podataka, sisteme elektronske pošte, štampače i faks servere. • Izvršavanje serverskih skriptova troši više serverskih resursa i predstavlja veći sigurnosni rizik od isporučivanja jednostavnih Web stranica. Iz tih razloga, dobijanje dozvole da koristite resurse za primenu serverskog skripta, obično je teže, skuplje, ili resrtiktivnije od dobijanja Web prostora bez mogućnosti korišćenja skripta. 1
  • 2. Baze podataka VBScript VBScript VBScript (Visual Basic Script) je uveden od strane Microsoft-a u Internet Explorer-u, počevši od verzije 3.0, a zasnovan je na Microsoftovom Visual Basic programskom jeziku. Dizjniran za laku upotrebu na Internet-u, VBScript omogućuje potpuno automatizaciju i kontrolu nad web stranama. Zajedno sa ActiveX kontrolama omogućava široku primenu dinamike u web dizajnu. VBScript se može koristiti i na klijentskoj i na serverskoj strani. VBScript ne podržava striktno definisane tipove podataka. VBScript funkcije mogu se nalaziti bilo gde unutar HTML koda, uključujući i HEAD i BODY sekcije. Preporučljivo je da se sve funkcije deklarišu na istom mestu, i to uglavnom u BODY sekciji. Veći deo onog što važi kod Visual Basic for Applications, preneće se na VBScript. Međutim, postoje i bitne razlike: - Nedostatak vizuelnog aspekta. Ne može da prikaže prozore ili okvire za dijalog, ne podržava čak ni funkcije MsgBox ili InputBox. Naravno, script može da ispisuje HTML da bi napravio željeni vizuelni prikaz u čitaču Web posetioca. - Implicitno definisanje promenljivih. Obične promenljive ne zahtevaju eksplicitno definisanje u VBScriptu. Da bi se napravila nova promenljiva, dovoljno je početi je koristiti. Sa druge strane, nizove je neophodno deklarisati pre početka korišćenja. - Slabo tipizirane promenljive. VBScript podržava samo dva tipa promenljivih: objekte (lako ih je prepoznati) i varijante (automatski preuzimaju karakteristike podataka od bilo koje vrednosti koje se u njih pohranjuju). Da bismo “primorali” promenljivu da bude određenog tipa, potrebno je upotrebiti neku od funkcija za konverziju tipova. - Objekti koji su jedinstveni za VBScript. Većina objekata se odnosi na pristupanje datotekama i zamenjuju tradicionalne komande, kao što su Open, Line Input, Print, Close, Dir$, FileAttr, i FileDateTime. - Opseg promenljivih. Promenljive napravljene unutar potprograma i funkcija dostupne su samo unutar tih struktura i unutar potprograma ili funkcija koje pozivaju. Da bi se promenljiva ili konstanta učinila dostupnom za sav kod serverskog skripta u Web stranici, potrebno ju je definisati izvan svih funkcija ili potprograma. - Formatirajuće funkcije. U VBScriptu se umesto Format koriste znatno specifičnije naredbe. Argumenti između uglastih zagrada su opcioni - Dodatne funkcije za stringove, kojih nema u drugim oblicima Visual Basica. Većina tih string funkcija podseća na funkcije koje su prethodno bile dostupne samo u Perlu. U narednoj tabeli navedene su nove funkcije koje omogućavaju bolje rukovanje stringovima i nizovima: 2
  • 3. Baze podataka VBScript Funkcija Sintaksa Opis Filter Filter (ulazniStringovi,vrednost Vraća niz koji sadrži sve [, uključuje elemente drugog niza koji [, modelPoređenja]]) sadrže (ili ne sadrže) navedeni podstring. InstrRev InStrRev(string1, string2 Vraća poziciju jednog [, start stringa unutar drugog, [, modelPoređenja]]) pretražujući zdesna ulevo. Join Join(lista Kopira sve elemente niza u [, graničnik]) jedan string, opciono razdvajajući sve elemente niza zadatim znakom. Replace Replace(izraz, pronaći, U datom string izrazu, zamenitiSa zamenjuje jedan podstring [, start drugim i zatim vraća [, brojanje rezultat. [, modelPoređenja]]]) Split Split(izraz Kopira razdvojeni string u [, graničnik jednodimenzionalni niz. [, brojanje Svaki put kada Split pronađe [, modelPoređenja]]]) graničnik, počinje sa kopiranjem u novi elemenat niza. StrReverse StrReverse(string) Obrće redosled znakova u stringu i vraća rezultat – na primer, StrReverse(''abc'') vraća ''cba''. U nastavku prikazane su definicije samo nekih (od mnogo) procedura VBScripta. Naveden je opis, spisak parametara (ukoliko ih ima), povratna vrednost (ukoliko je u pitanju funkcija) i primer upotrebe svake procedure. 3
  • 4. Baze podataka VBScript The VarType function returns the following values: Constant Value Description vbEmpty 0 Empty (uninitialized) vbNull 1 Null (no valid data) vbInteger 2 Integer vbLong 3 Long integer vbSingle 4 Single-precision floating-point number vbDouble 5 Double-precision floating-point number vbCurrency 6 Currency vbDate 7 Date vbString 8 String vbObject 9 Automation object vbError 10 Error vbBoolean 11 Boolean vbVariant 12 Variant (used only with arrays of Variants) vbDataObject 13 A data-access object vbByte 17 Byte vbArray 8192 Array STRINGOVI Stringovi su textualni tip podataka (niz znakova) Vrste : Lenght Len(var) Broj znakova (dužina riječi) Lower Case Lcase(var) Ispisuje riječ malim slovima Uper Case Ucase(var) Ispisuje riječ malim slovima Left Left(var) Pretražuje riječ od lijeve strane 4
  • 5. Baze podataka VBScript Right Right(var) -||- od desne strane Middle> 1.parametar-string s kojim Mid(var) -||- od sredine radimo, 2. parametar-pozicija odakle uzimamo, 3.parametar – broj znakova koliko uzimamo Replace (varijabla,''što'',''u što'', Replace() Jedan dio stringa zamjeni s pozicija od kojeg mjesta, koliko drugim promjena(ako je –1, onda mijenja sve riječi), vrste traženja 0- binarno 1- tekstualno 2- baza podataka StrReverse StrReverse(var) Okreće riječi naopako String String(koliko ponavljanja, ascii Više puta ispisuje slovo koje kod) smo zadali ascii kodom Asc ASC() Traženje ascii kodova: A->65 CHR CHR() Obrnuto od ascii 65->A SPACE Space() Broj razmaka u msgboxu Trim TRIM() Izbacuje razmake sa svih strana Ltrim Ltrim() Izbacuje razmake sa lijeve strane Rtrim Rtrim() Izbacuje razmake sa desne strane Lower Bound Lbound(niz) Vraća najniži index u nizu Uper Bound Ubound(niz) Vraća najviši index u nizu Za ostalo pogledati VBScript dokumentaciju. Primjer 1 : <html> <head> <script language="vbscript"> <!-- sub window_onload() a="Bok ljudovi ! " document.write "Len-broj slova = " & len(a) & "<br>" document.write "LCase-mala slova = " & lcase(a) & "<br>" document.write "UCase-velika slova = " & ucase(a) & "<br>" c = left(a,4) d = right(a,9) document.write "Lijevo = " & c & "<br>" document.write "Desno = " & d & "<br>" document.write "Sredina rijeci = " & mid(a,3,5) & "<br>" document.write " Promjena rijeci = " & replace(a ,"ljudovi","slonovi",1,-1,1) & "<br>" document.write " Promjena taga italic u bold = " & replace("<i>Italic</i>","i>","b>") & "<br>" document.write " Okretanje rijeci naopako = " & StrReverse(a) & "<br>" 5
  • 6. Baze podataka VBScript document.write " Ponavljanje vise puta = " & String(3,13) & "<br>" document.write " ASCII kod od 'A' = " & asc("A") & "<br>" document.write " 65 u ASCII kodu je = " & chr(65) & "<br>" document.write " Brisanje razmaka &nbsp; &nbsp; &nbsp; &nbsp; bok ljudovi &nbsp; &nbsp; &nbsp; &nbsp; ! u = " & trim(a) & "<br>" msgbox " Razmaci = " & space(20) & "Kraj" end sub //--> </script> </head> <body bgcolor="#658945"> <center> </center> </body></html> Primjer 2: <html> <head> <script language="vbscript"> <!-- sub window_onload() a = "Nenad;Mario;Bojan;Mladen;Tomislav" imena = split(a,";") for i = LBound(imena) to UBound(imena) document.write imena(i) & "<br>" next document.write "<hr width=10% align=left>" for each ime in imena document.write ime & "<br>" next end sub //--> </script> </head> <body> </body></html> 6
  • 7. Baze podataka VBScript Pretraživanje stringova InStr(pozicija,gdje,što, koja komparacija(0-binarno, 1-textualno, 2- baza podataka) InStrRev(gdje,što,pozicija(-1),koja komparacija) - isto kao InStr, samo pretražuje Odozada Primjer: <html> <head> <script language="vbscript"> <!-- sub window_onload() a= " Dobro dosli ljudovi !" document.write " Kljucne rijeci = " & a & "<br>" document.write " Promjena taga italic u bold = " & replace("<i>Italic</i>","i>","b>") & "<br>" document.write " Promjena rijeci = " & replace(a ,"ljudovi","slonovi",1,-1,1) & "<br>" document.write " Trazimo na kojem mjestu pocinje rijec dosli = " & InStr(1,a,"dosli",1) & "<br>" document.write " Trazimo na kojem mjestu pocinje rijec dosli odozada = " & InStrRev(a,"dosli",-1,1) & "<br>" end sub //--> </script> </head> <body bgcolor="#658945"> <center> </center> </body></html> 7
  • 8. Baze podataka VBScript Nizovi stringa Split- podijeli Split(a,'';'') a – varijabla,tj.ime niza koji razdvajamo -razdvaja varijablu koja sadrži neko nabrajanje razdvojeno sa ; u niz Primjer: <html> <head> <script language="vbscript"> <!-- sub window_onload() a = "Nenad;Mario;Bojan;Mladen;Tomislav" imena = split(a,";") for i = LBound(imena) to UBound(imena) document.write imena(i) & "<br>" next document.write "<hr width=10% align=left>" for each ime in imena document.write ime & "<br>" next end sub //--> </script> </head> <body> </body></html> Primjer 2: <HTML> <TITLE>Current Date/Time 2</TITLE> <HEAD> <script language=vbscript> <!-- sub b1_onclick() 8
  • 9. Baze podataka VBScript baza="Drazen;Davor;Nenad;Darko;Tomislav;Mario;Pero;Jura;Stevo;Branko;Branimir;Kr eso;Bojan;Mladen" unos=t1.value imena = split(baza,";") for each ime in imena if ucase(ime)=ucase(unos) then found = true exit for else found = false end if next if found then t2.value = "Osoba postoji !" else t2.value = "Osoba ne postoji !" end if end sub //--> </script> </head> <body bgcolor=black text=white onload="t1.focus"> <br><br><br><br><br><br> <center> <table width=50% height=20% bgcolor=blue border=2 bordercolorlight="#c0c0c0" bordercolordark="#505050"> <tr><td align=center><b>Unesite ime :</td> <td align=center> <input name="t1" type="text" value=""></td><td>&nbsp; <input type="button" name=b1 value="Provjeri !"> </td></tr><tr><td></td><td align=center><b>Potvrda !<br> <input name="t2" type="text" value="" > </td></tr></table> </center> </body> </html> 9
  • 10. Baze podataka VBScript Funkcije Array,Join,Filter Join Spajanje slova(riječi), tj redove u rečenicu, tj niz u rečenicu Var=Join(var1,'','') Var1- određena varijabla,tj niz Array - funkcija za stvaranje niza Primjer array i join : <html> <head> <script language="vbscript"> <!-- sub window_onload() a=array("Nenad","Pero","Jura","Mloaden") for each x in a document.write x & "<br>" next b=join(a,", ") document.write "<hr width=20% align=left>" & b end sub //--> </script> </head> <body bgcolor="#658945"> </body></html> Filter - iz niza izdvaja samo neke elemente, i od toga odvojenoga niza stvara novi niz 10
  • 11. Baze podataka VBScript - var=Filter(niz,''što'',true,komparacija) Primjer 1: <html> <head> <script language="vbscript"> <!-- sub window_onload() a=array("Proanima d.o.o","Gramip d.o.o","Pik Vrbovec d.o.o","Agritec d.o.o","Pliva d.d") x=inputbox("unesi koju vrstu firme treba") b=filter(a,x,true,1) for each c in b isp = isp & c & "<br>" next prv.innerhtml = isp end sub //--> </script> </head> <body bgcolor="#658945"> <p id=prv></p> </body></html> VARIANTI Typename – javit će ime stringa IsArray – da li je varijabla niz IsNumeric – da li je varijabla broj IsDate – da li je varijabla datum IsEmpty – da li je polje ili neka varijabla prazna IsNull – posebno stanje kada je polje neupotrebljivo -različito od empty- tj. Polje nije upotrebljivo 11
  • 12. Baze podataka VBScript Primjer : <html> <head> <script language="vbscript"> <!-- sub window_onload() a=12.6545465465465465465465465456465465 document.write vartype(a) & "<br>" document.write typename(a) & "<br>" & "<hr width=20% align=left>" b=#19/9/2001# document.write vartype(b) & "<br>" document.write typename(b) & "<br>" & "<hr width=20% align=left>" c=array("1","2","3") if isarray(C) then document.write "IsArray--Je, to je niz" & "<br>" & "<hr width=20% align=left>" else document.write "Ne, to nije niz" & "<br>" & "<hr width=20% align=left >" end if if isdate(b) then document.write "<body bgcolor=black text=green>" &"IsDate--Je, to je datum" & "<br>" & "<hr width=20% align=left >" else document.write "Ne, to nije datum" & "<br>" & "<hr width=20% align=left > " end if if isnumeric(a) then document.write "IsNumeric--Je, to je broj" & "<br>" & "<hr width=20% align=left>" else document.write "Ne, to nije broj" & "<br>" & "<hr width=20% align=left>" end if if isempty(k) then document.write "IsEmpty--Datum nije upisan" & "<br>" & "<hr width=20% align=left>" end if l=null 12
  • 13. Baze podataka VBScript if isnull(l) then document.write "IsNull--Je, null je" & "<br>" & "<hr width=20% align=left>" end if end sub //--> </script> </head> <body bgcolor="#658945"> <center> <p id=prv></p> </body></html> Dinamički niz Dinamički niz je niz u kojem u tijeku izvođenja programa mijenjamo broj elemenata. DIM(6) – fiksni niz od 6 elemenata DIM() - fleksibilan niz sa mogućom promjenom ReDim Preserve var(broj elemenata u varijabli) ReDim Preserve a(Ubaund(a)+1) ->trenutni broj elemenata kojem dodajeno još jedan Primjer: <html> <head> <script language="vbscript"> <!-- sub window_onload() dim a() redim preserve a(5) ReDim Preserve a(UBound(a)+1) document.write Ubound(a) & "<br>" end sub //--> </script> </head> <body bgcolor="#658945"> <center> <p id=prv></p> </body></html> 13
  • 14. Baze podataka VBScript Z A K LJ U Č A K U ovom eseju nije bilo dovoljno mesta za potpuni opis programskog jezika VBScript. Ipak, kompletan priručnik dostupan je iz raznih izvora sa Weba (adresa http://msdn.microsoft.com/scripting) 14