free webpage counters
ETUSIVU materiaalit

15 Mitä ASP on?


ASP:a (Active Server Pages) käytetään, kun halutaan luoda dynaamisia (muuttuvia) ja interaktiivisia (käyttäjä voi vaikuttaa) sivuja- ASP-tekniikka mahdollistaa myös mm. erittäin helpon liitynnän tietokantoihin, ja se sisältää sessioiden (istuntojen) hallintamekanismin. ASP ei ole ohjelmointikieli. Se on pikemminkin tekniikka, joka mahdollistaa useiden skriptikielien käytön (riisuttuja ohjelmointikieliä). Usein ASP:ssa käytetään VBScripitiä tai JavaScriptiä. Tässä joitakin ASP-esimerkkejä.

ASP-koodi suoritetaan serverillä toisin kuin esim. HTML tai CCS, jotka suoritetaan selaimessa. Kun ASP-koodi on suoritettu niin tulos lähetetään selaimella HTML –dokumenttina (jos niin halutaan). Tämä on selkeä etu, koska enää ei olla riippuvaisia selaimesta tai käyttöjärjestelmästä. ASP toimiikin kaikissa ympäristöissä. Haittapuolena on toisaalta, että selaimeen ei voida juurikaan vaikuttaa, mutta toisaalta voit käyttää Javascriptiä apuna.

ASP:n avulla tietokantoja nettiin?


Tietokantojen avulla halutaan laskea ylläpito- ja päivityskuluja. Siksi onkin tavallista, että tietokannat ovat yhä useammin www-palvelujen pohjana. Nykyisin suuri osa kehittyneiden www-palvelujen HTM-sivuista luodaankin erilaisista tietokannoista esim. Internet Movie Database (http://us.imdb.com/). Itse asiassa myös hakukoneet ovat laajoja tietokantoja.

Tietokantojen avulla on mahdollista ratkaista monenlaisia ongelmia. Tässä pari esimerkkiä:
http://www.internetix.fi/jari/tietokanta/ongelmia.htm Tai no joo, ei toimi (palvelin vaihtunut).

ASP koodia

ASP-tiedostot sisältävät joko VBScriptillä, JScriptillä tai Perlillä kirjoitettua ohjelmakoodia ja tavallista HTML:ää. Varsinainen koodi erotetaan HTML:stä merkinnöillä <% ja %>.


<HTML>
<BODY>
Tulostus:<BR>
<%
intS = 60*60
%>
Tunnissa on
<%
Response.Write intS
%>
sekuntia.
</BODY>
</HTML>


Selaimessa näyttää näin



Koodi, joka näkyy lähdekoodissa on tällainen:


<HTML>
<BODY>
Tulostus:<BR>

Tunnissa on
3600
sekunttia.
</BODY>
</HTML>



Ongelmia?

Kansiolla ei ole ajo-oikeuksia, jolloin ohjelmaa ei suoriteta vaan sen sijaan selain ehdottaakin imurointia. Saatat myös tallentaa tiedoston htm-muotoon, jolloin, selain ei suorita asp-koodin ajamista (esim.html). Silloin näkymä on alla olevan kaltainen eli selain kirjoittaa koodin.

Tulostus:
<% intS = 60*60 %>
Tunnissa on <% Response.Write intS %> sekuntia.



Yleinen virhe on myös selata asp-sivuja ilman www-plavelinta eli suoraan selaimessa. Silloinkaan koodi ei toimi.

Mitä tarvitset suorittaaksesi ASP-tietokantaohjelmia?

Microsoft Personal Web Server (PWS) tai Microsoft Internet Information Server (IIS) versio 4, Windows Nt serveri, Windows 2000 serveri tai Chili.
Microsoft Access tai joku muu tietokantaohjelma (esim. MySQL).
Muistio tai joku muu tekstieditori (NoteTab, EditPad).
Jos sinulla ei ole serveriä voit kokeilla sivustoa: http://www.1asphost.com/.

Perustietoja serveristä

Aspit eivät toimi kuten html-sivut, sillä oikein tehdystä asp-sivusta et saa näkyviin muuta kuin html-koodit. Eli jos teet testin esim. javascriptillä niin kuka tahansa pystyy kopioimaan sen esim. katsomalla lähdekoodin selaimen avulla (view source). Myös salasanasuojauksia on hankala tehdä pelkällä html-koodilla vaikka siihen yhdistäisi javascriptiä. Mutta asp on suojassa, koska varsinaista lähdekoodia käyttäjä ei saa näkyviin selaimensa avulla.

Kokeile:
http://www.internetix.fi/atkajokortti/

Oikein tehdyt asp-sivut sijaitsevat jossain virtuaalihakemistossa, jolle on annettu oikeudet ajaa asp-scriptit. Lisäksi tietokannat pyritään usein jättämään kokonaan www-rootin ulkopuolelle, koska muutenhan joku voisi imuroida koko kannan webin kautta kaikkine tietoineen (esim salasanat).

HUOM! Virtuaalihakemisto on hakemisto, jonka ei tarvitse sijaita kotihakemistosi alapuolella. Itse asiassa se voi sijaita kokonaan eri levyasemalla tai toisessa tietokoneessa, mutta siihen voidaan päästä käsiksi asiakkaan selaimella Internetin kautta ikään kuin se olisi kotihakemistosi alapuolella.

Lisätietoja serverin toiminnasta:
http://www.internetix.fi/atk-tuki/opinnot/intranet/
http://www.internetix.fi/atk-tuki/opinnot/asp/

Webhotellit
Webhotelleista saat tietoja täältä: http://www.webhotellit.com/
Huom! Varmista tuki ODBC:lle ja ASP:lle.