Transcript ASP
2
ASP 3.0
Active Server Pages
Microsoft palvelinpuolen www-ohjelmointitekniikka, jossa HTML:n sekaan voidaan kirjoittaa skriptejä 28.4.2020
Dynaaminen Internet T2HA53 1
Esimerkki.
staattinen ja dynaaminen www-sivu
Tallennetaan palvelimeen C:\Inetpub\www.root\kansio\tiedosto Pyydetään selaimella URL http:/localhost/kansio/tiedosto heippa.html
heippa.asp
Heippa
2
Demo. http://localhost/asp3/heippa.asp Heippa.asp
28.4.2020
Dynaaminen Internet T2HA53
Lomakepyyntö ja ASP-vastaus
lomake on request (pyyntö) pyynto.asp
esim.
vastaus.asp-tiedostossa on response (vastaus) esim. <% muuttuja=Request.Form(”kohde") Response.Write(muuttuja) %>3
28.4.2020
Dynaaminen Internet T2HA53
…..Esim. pyyntö-vastaus
requesti2.asp
responsi2.asp
<% dim juttu juttu=Request.Form("etu") Response.Write("Kiitos. ") Response.Write(juttu) %> Demo. http://localhost /asp3/requesti2.asp
4
28.4.2020
Dynaaminen Internet T2HA53
TEHTÄVÄ. Vahvistus
Rakenna vuorovaikutteinen sivusto (2 tiedostoa), jossa on lomake syöttökenttineen (nimi ja ikä) ja palvelin vastaa kertomalla mitä syötit.
Extra demo. requesti_responsi.asp
5
28.4.2020
Dynaaminen Internet T2HA53
Evästeet - Cookies 6
Evästekokoelman avulla pystytään tunnistamaan kone, joka on jo aiemmin käynyt sivustossa (palvelimella…) Evästeisiin voidaan tallentaa (pitemmäksi aikaa) tietoa asiakaskoneen aiemmin tekemistä valinnoista Evästeet tallentuvat tekstitiedostona asiakkaan koneelle
->
Evästeet -kokoelma mahdollistaa asiakaskoneen personoinnin max. 4kt (Netscape) 28.4.2020
Dynaaminen Internet T2HA53
… Cookies syntaksi
Eväste asennetaan ennen ensimmäistä -tagia Tiedostossa vastaus.asp sijoitetaan eväste asiakkaan koneeseen a) eväste voidaan antaa koodissa suoraan Response.Cookies(”sNimi”)=”Ankka” (yksiulotteinen eväste) b) evästeelle saadaan arvo lomakekentästä Response.Cookies(”sNimi")=Request.Form(”kohde")
7
28.4.2020
Dynaaminen Internet T2HA53
… Evästeet (Cookies) voimassaoloaika
(tällöin sijoitetaan fyysisesti asiakaskoneeseen esim. kohtaan C:\Documents and Settings\...\Cookies) voimassa 30 päivää: Response.Cookies(”sNimi").Expires=date()+30 tuhotaan eväste: Response.Cookies(”sNimi").Expires=date()-1
8
28.4.2020
Dynaaminen Internet T2HA53
… Evästeet (Cookies) olemassa olevan evästeen käsittely
Muuttujaan sijoitetaan olemassa oleva eväste ja se kirjoitetaan HTML -tulostusvirtaan
evaste=Request.Cookies(”sNimi”) Response.Write(evaste)
Evästeet (joissa voimassaoloaika) löytyvät asiakkaan koneelta eri kohdista, esim: C:\Documents and Settings\...\Cookies ks. selaimelta Tools>Internet Options > Temporary Internet Files>Settings>View Files
9
Demo. http://localhost/asp3/cookies_syottolomake.asp
cookies_syottolomake.asp
, cookies_syotto.asp
28.4.2020
Dynaaminen Internet T2HA53
TEHTÄVIÄ . Eväste 10
1.Rekisteröinti. Tee lomake, joka pyytää luomaan etunimen, käyttäjätunnuksen ja salasanan. Lisäksi se ilmoittaa, että nämä tallennetaan vastaisuuden (10 vrk) varalle. Tämän jälkeen palvelin kertoo mitä löytyy evästeinä.
.
2. Anna asiakkaalle mahdollisuus poistaa olemassa oleva eväste.
28.4.2020
Dynaaminen Internet T2HA53
4.2 Session
Session -olio interaktiivisuuteen istunnon aikana – milloin istunto alkaa – tallentaa istuntoa koskevaa tietoa – milloin istunto lopetetaan
11
28.4.2020
Dynaaminen Internet T2HA53
...Session -olion termejä
istunnon aikaiset muuttujat (ominaisuuksia, metodeja ja kokoelmaa)
<% tunnus=Session.SessionID %> palauttaa nyk. istunnon id-tunnuksen <% Session.Timeout=10 %> palauttaa/asettaa aikakatkaisun (10 minuuttia) <% Session.Abandon() %> tuhoaa session-olion <%Session.Contents(”nimi”)=”Tiina” %> Antaa istunnon kokoelman ”nimi” arvoksi ”Tiina”
12
28.4.2020
Demo. http://localhost/asp3/session.asp
TEHTÄVIÄ. Session
1. Session. Tee istunnon aikainen sivu, joka antaa istunnolle ID:n. Istunnon aikakatkaisuksi laitat 5 minuuttia. Lisäksi käyttäjällä on mahdollisuus katkaista istunto.
13
28.4.2020
Dynaaminen Internet T2HA53
...Selaimen sivujen integrointia
(Response ja Server -oliot)
14
<% Response.Redirect(”responsi2.asp”) %> -ohjaa uudelle sivulle <% Server.Transfer (”responsi2.asp”) %> -upottaa/ohjaa uudelle sivulle (vie mukanaan muuttujia) <% Server.Execute(”responsi2.asp”) %> -suorittaa käskyn upottaa toisen sivun alkuperäiseen mahdollistaa yhteiset aliohjelmat