ASP
kezdőknek 2. – Űrlapok és karakterláncok |
|
Az előző részben az ASP alapjaival
foglalkoztam. Bemutattam a szintaktikát és pár fontos dolgot. Mivel a szerver
oldali nyelvek - s így az ASP-nek is - egyik
legfontosabb alkalmazási területe az űrlapok feldolgozása, így ebben a
részben ezzel fogok foglalkozni, valamint az előző részben
megismert karakterláncokkal kapcsolatos eljárásokat bővítem ki. |
|
Űrlapok |
|
A HTML űrlapok (form)
segítségével adatokat küldhetünk a szervernek. Ezeket az űrlapokat használjuk pl. kereséshez, különböző szolgáltatásokra
való feliratkozáskor stb. Az ASP technika segítségével könnyedén fel tudjuk
dolgozni az űrlapok adatait. |
|
Űrlapelemek |
|
Az űrlapokon alapvetően 8 fajta beviteli elemet
használhatunk. Ezek a szövegmező (text), a
jelszómező (password), a feljegyzés (textarea), a legördülő lista (selectbox),
a fájl mező (file area),
a választógomb (radio button),
a jelölőnégyzet (checkbox) és a sima gomb (button). A gombok között még megkülönböztethetünk 3
típust: elküldő gomb (submit), alapállapot
gomb (reset) és sima gomb (button).
Az űrlapokat HTML-ben kell felépíteni. Egy ASP szkripthez
feldolgozásra akár egy statikus HTML lap is küldhet adatokat. |
|
Feldolgozás |
|
Ahhoz, hogy az ASP oldal el tudja érni az űrlap
adatait, az űrlapelemek mindegyikének nevet kell adnunk. Később az
adatokra ezekkel a nevekkel hivatkozhatunk. Példa: Űrlapmező: <input
type=text name=neve> Hivatkozás: Request.form("neve") Fontos még megjegyezni, hogy az
űrlapok elküldésére két metódus van, a POST és a GET. A metódust az űrlap HTML TAG-jében kell megadni (<form method=GET>). A két metódus abban különbözik
egymástól, hogy míg a GET metódussal elküldött űrlapok adatai a böngésző
címsorába kerülnek, addig a POST metódus csak a szervernek küldi ez az adatokat, így
azokat manuálisan nem lehet módosítani. Az ASP számára a két metódus között
az a különbség, hogy GET metódus esetén az adatokra a request objektumon belül a querystring elemmel, míg POST metódus esetén a form elemmel hivatkozhatunk. |
|
Adatok beolvasása, tárolása |
|
Az űrlapadatokat a feldolgozáshoz érdemes
változókban eltárolni. Pl.: Valt1
= request.form("ertek") Később ezzel a változóval
számolhatunk, műveleteket végezhetünk, vagy tárolhatjuk egy fájlban vagy
adatbázisban. Ha az elküldött űrlapban több azonos nevű
űrlapelem is van (pl. jelölőnégyzetek esetén), akkor ezek az
értékek egyszerre kiolvashatók az adott név alatt, és egy vesszővel
tagolt karakterláncot adnak. Például ha egy űrlapon több haziallat nevű elem szerepel, akkor a request.form("haziallat") függvény a következő
értéket fogja visszaadni: ertek1,
ertek2, ertek3, ertek4 Bizonyos esetekben ez a
vesszővel tagolt lista önmagában is használható, de a replace
függvénnyel át is alakíthatjuk. Az első példaprogram (form1.asp)
ezt mutatja be. Van úgy, hogy egy űrlap
adatait úgy szeretnénk feldolgozni, hogy az eredmény a következő
űrlapba (vagy például hibaellenőrzéskor ugyanebbe) kerüljön.
Ilyenkor az űrlap HTML részébe kell beszúrnunk az adatokat. Például ha
van egy szöveges adatunk egy szoveg változóban, és azt szeretnénk a
szövegmezőbe beilleszteni, akkor az alábbi módon tehetjük meg: <input
type="text" value="<%=szoveg%>"> A szerver a <%=szoveg%> helyére beilleszti a változó tartalmát, így a
böngészőben a szöveg benne lesz a szövegmezőben. Ugyanezt a legördülő
listánál vagy a jelölőnégyzetnél is megtehetjük, de ilyenkor egy IF elágazással ellenőriznünk
kell, hogy a változó a kívánt értékű-e, s ha igen, ki kell írni a SELECTED (legördülő lista esetén)
illetve a CHECKED (jelölőnégyzet vagy rádiógomb esetén). Pl.: <input
type="checkbox" value="érték"<%If
valtozo=3 then response.write("checked")%>> A fenti példa bejelölt
jelölőnégyzetet eredményez, ha a változó értéke 3, egyébként ürest. A
második példaprogram (form2.asp) ezt mutatja be legördülő
menüvel. |
|
Karakterláncok |
|
Az előző részben már megismerkedtünk a
karakterláncokkal, valamint pár hozzájuk tartozó függvénnyel. Most szeretnék
még pár fontos dolgot leírni. Karakterláncok összefűzése Két vagy több karakterláncot
egyszerűen összefűzhetünk a + vagy az & jelek segítségével. Pl.: "szöveg
1" & "szöveg 2" Karakterlánc manipulálás Különböző függvények állnak
rendelkezésünkre a karakterláncok módosítására. Most ezeket kicsit
részletesebben ismertetném. Lcase,
Ucase: Ezen két függvénnyel kis- (Lcase) illetve nagybetűssé (Ucase)
alakíthatjuk a szöveget (az összes karaktert. Pl.: Valt = Ucase(valt) Eredmény: VALT Valt = Lcase("SzÖvEg") Eredmény: szöveg InStr:
Ezzel a függvénnyel egy karaktersorozatot kereshetünk. Ha az adott szövegben
megtalálható a karaktersorozat, akkor az eredmény a karaktersorozat első
karakterének pozíciója a szövegen belül, egyébként nulla. Figyeljünk rá, hogy
a keresés érzékeny a kis- és nagybetűk különbségére. Pl.: InStr("Első szöveg","szöveg") A fenti példa esetén a
visszatérési érték 6 lesz, hisz a 6. karakternél kezdődik a keresett
szöveg (a szóköz is beleszámít). Left,
Right, Mid: Ezek segítségével a karakterlánc bal vagy jobb
oldaláról illetve a közepéről vághatunk ki egy megadott hosszúságú
részletet. Pl.: Left("abcdef",3) Eredmény: abc Right("abcdef",2) Eredmény: ef Mid("abcdef",3,2) Eredmény: cd Mid("abcdef",4,1) Eredmény: d Trim:
Ennek a függvénynek a segítségével eltávolíthatjuk a szóközöket a
karakterlánc végeiről. Pl.: Trim(" szöveg szöveg ") Eredmény: "szöveg
szöveg" Két másik fontos karakterlánc
függvényről (replace és len) már szóltam az előző
részben, így ezeket most külön nem említeném meg. Ebbe a részbe ennyi fért. A
következő részben az ASP egyik igen érdekes területével, az adatbázisok
kezelésével fogok foglalkozni. Addig is bármilyen visszajelzést szívesen
fogadok. |
|
Karsai Balázs |