Form Kolleksiyonu

Form Kolleksiyonu

Form Kolleksiyonu

Form Kolleksiyonu

Aşağıdaki iki .asp birbirine veri yollamaktadır. Birinci .asp’deki forma girilen veriler, ikinci .asp’deki inster deyimlerine yollanmaktadır. Burada dikkat edilmesi gereken nokta Request.Form(eleman) kolleksiyonunun kullanımıdır.Form Kolleksiyonu2

<html>

<head>

<meta htttp-equiv=”Content – Type” content=”text/html; charset=windows-1254”>

<title>new advertisement form>/title>

<meta name=”GENERATOR” content=”Microsoft FrontPage 3.0”>

</head

<body bgcolor=”#FFFF80”>

<div align=”center”><center>

<table border=”1” width=”597” height=”1”>

<tr>

<td width=”166” height=”1” background=”Duvar.jpg”><p align=”center”><img src=”STUGA.gif”

width=”140” height=”89” alt=”STUFA.gif (6111 bytes)”></td>

<td width=”223” height=”1” valign=”bottom”><p align=” center”><font face=”Copperplate Gothic Bold” color=”#800000”

size=”4”><strong>NetSPage</strong></font></p>

<p align=”center”><font face=”Lucida Handwriting” color=”#800000”

size=”4”>REAL ESTATE>/font></td>

<td width=”190” height=”1” background=”Duvar.jpg”><p align=”center” ><img src=” STUGA.gif”

width=”140” height=”89” alt=”STUGA.gif (6111 bytes)”></td>

</tr>

</table>

</center></div><%

set conntemp=server.createobject(”adodb.connection”)

conntemp.open ”DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\Inetpub\wwwroot\program\netspage.mdb”

%>

<p align=”center”><big><font color=”#000080” face=”Arial”><strong>NEW ADVERTISEMENT FORM</strong></font></big></p>

<hr size=”4” color=”#800000”>

<p align=” center”><small><font

face=”Arial” ><small><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&;</strong></small></font></small></p>

<form method=”POST” action=”insert .asp”>

<table border=”1” width=”103%” bordercolor=”#FFFF80”

bordercolorlight=”#FFFF80”

bordercolordark=”#FFFF80” height=”570”

style=”font-family: Book Antiqua; font-size:12 pt; color; rgb(0,0,128)”>

<tr>

<td width=”25%” height=”24”><div align=”left”><p>Category :< /td>

<td width=”25%” height=”24”><%sqltemp=”select distinct Category from RealEstate”

set rstemp=conntemp.execute(sqltemp)

%>

<p><select name”menu1” size=”1”

style=”font-size: 10pt; font-family: Book Ant,qıa; color: rgb (0,0,128);

margin: auto”>

<option selected value=”other”>other</option>

<%do while not rstemp.eof

category=rstemp(”Category”)%>        <option

value=”<%=category%>”><%=category%></option>

<% rstemp.movenext

loop %>       </select></td>

<td width=”22%” height=”24”>If other specify :<input type=”text”

name=”T13” size=”20”

style=”font-family: Book Antiqua; font-size: 1opt”></td>

</tr>

<tr>

<td width=”25%” height=”24>Location:</td>

<td width=”25%” height=”24”><%sqltemp=”select distinct Location from RealEstate”

set rstemp=conntemp.execute(sqltemp) %>

<p><select name=”menu2” size=”1”

style=”font-size:10pt; font-family: Book Antiqua; color: rgb(0,0,128)”>

<option selected value=”other”>other”>other</option>

<% do while not rstemp.eof

category=rstemp(”Location”)%>       <option

value=”<%=category%>”><%=category%></option>

<% rstemp.movenext

loop %>      </select></td>

<td width=”22%” height=”24”>If other specify:<input type=”text” name=”T14” size=”20”

style=”font-family: Book Antiqua; font-size: 10pt; color:

rgb(0,0,128)”></td>

</tr>

<tr>

<td width=”25%” height=”24”>Status:>/td>

<td width=”25%” height=”24”><%sqltemp=”select distinct Status from RealEstate”

set rstemp=conntemp.execute(sqltemp) %>

<p><select name=”D1” size=”1”

style=”font-family: Book Antiqua; font-size: 10pt; color: rgb(0,0,128)”>

<% do while not rstemp.eof

category=rstemp.eof

category=rstemp(”Status”)%>     <option

value=”<%=category%>”><%=category%></option>

<% rstemp.movenext

loop %>      </select></td>

<td width=”%” height=”24”></td>

</tr>

<tr>

<td width=”25%” height=”38”>DETAILS</td>

<td width=”25%” height=”38”></td>

<td width=”22%” height=”38”></td>

</tr>

<tr>

<td width=”25%” height=”24”>Conditions:</td>

<td width=”25%” height=”24”><%sqltemp=”select distinct Conditions from RealEstate”

set rstemp=conntemp.execute(sqltemp) %>

<p><select name=”menu9” size=”1”

style=”font-size:10pt; font-family: Book Antiqua; color: rgb(0,0,128)”>

<% do while not rstemp eof.

category=rstemp(”Conditions”)%>

value=”<%=category%>”><%=category%></option>

<%rstemp.movenext

loop %>      </select></td>

<td width=”22%” height=”24”></td>

</tr>

<tr>

<td width=”25%” height=”38”>Number Of Stor<big>e</big>y</td>

<td width=”25%” height=”38”><input type=”text” name=”T5” size=”20” style=”font-family: Book Antiqua; font-size: 10pt; color:

rgb(0,0,128)”></td>

<td width=”22%” height=”38”></td>

</tr>

<tr>

<td width=”25%” height=”38”>Number of Bathrooms</td>

<td width=”25%” height=”38”><input type=”text” name=”T6” size=”20”

style=”font-family: Book Antiqua; font-size: 19pt; color:

rgb(0,0,128)”></td>

<td width=”22%” height=”38”></td>

</tr>

<tr>

<td width=”25%” height=”38”>Number Of Rooms</td>

<td width=”25%” height=”38”><input type=”text” name=”T7” size=”20”

style=”font-family: Book Antiqua; font-size: 10pt; color:

rgb(0,0,128)”></td>

<td width=”22%” height=”38”></td>

</tr>

<tr>

<td width=”25%” height=”38”>Number of Balconies</td>

<td width=”25%” height=”38”><input type=”text” name=”T8” size=”20”

style=”font-family: Book Antiqua; font-size: 10pt; color:

rgb(0,0,128)”></td>

<td width=”22%” height=”38”></td>

</tr>

<tr>

<td width=”25%” height=”38”>Heating System</td>

<td width=”25%” height=”38” ><%sqltemp=”select distinct Heating from RealEstate”

set rstemp=conntemp.execute(sqltemp) %>

<p><select name=”menu10” size=”1”

style=”font-size:10pt, font-family: Book Antiqua; color: rgb (0,0,128)”>

<option selected value=”other”>other</option>

<%do while not rstemp.eof

category=rstemp(”Heating”)%>      <option

value=”<%category%>”><%=category%></option>

<%rstemp.movenext

loop %>      </select></td>

<td width=”22%” height=”38”>If over specify:<input type=”text”

name=”T17” size=”20”

style=”font-family: Book Antiqua; font-size: 10pt; color:

rgb(0,0,128)”></td>

</tr>

<tr>

<td width=”25%” height=”13”>Garden</td>

<td width=”25%” height=”13”><input type=”checkbox” name=”C1”

value=”ON”></td>

<td width=”22%” height=”13”></td>

</tr>

<tr>

<td width=”25%” height=”19”>Garage</td>

<t                          ”height=”19”><input type=”checkbox” name=”C2”

value=”ON”></td>

<td width=”22%” height=”19”></td>

</tr>

<tr>

<td width=”25%” height=”24”>Furnished</td>

<td width=”25%” height=”24”><input type=”checkbox” name=”C3”

value=”ON”></td>

<td width=”22%” height=”24></td>

</tr>

<tr>

<td width=”25%” height=”24”>Size (in m2)</td>

<td width=”25%” height=”24”><input type0”text” name=”T11” size=”20”

style=”font family: Book Antiqua; font-size: 10pt; color:

rgb(0,0,128)”></td>

<td width=”22%” height=”24”></td>

</tr>

<tr>

<td width=”25%” height=”24”>Price (millions)< /td>

<td width=”25%” height=”24”><input type=”text” name=”T12” size=”20”

style=”font-family: Book Antiqua; font-size: 10pt; color:

rgb(0,0,128)”></td>

<td width=”22%” height=”24”></td>

</tr>

<tr>

<td width=”25%” height=”19”>LOCATION</td>

<td width=”25%” height=”19”></td>

<td width=”22%” height=”19”></td>

</tr>

<tr>

<td width=”25%” height=”25”>Province</td>

<td width=”25%” height=”25”><input type=”text” name=”T9” size=”20”

style=”font-family: Book Antiqua; font-size: 10pt”></td>

<td width=”22%” height=”25”></td>

</tr>

<tr>

<td width=”25%” height=”25”>City</td>

<td width=”25%” height=”25”><input type=”text name=”T10” size”20”

style=”font-family: Book Antiqua; font-size: 10pt; color:

rgb(0,0,128)”></td>

<td width=”22%” height=”25”></td>

</tr>

<tr>

<td width=”25%” height=”19”>Extra</td>

<td width=”25%” height=”19”><textarea rows=”3” name=”S1” cols=”20” style=”font-family: Book Antiqua; font-size: 10pt; color:

rgb(0,0,128)”></textarea></td>

<td width=”%” height=”19” valign=”top”><input type=”submit”

value=”Submit Form”

name=”B1”

style=”font-family: Book Antiqua; font-size: 10pt; background-color:

rgb(0,0,128); color: rgb(255,255,255)”><p><input

type=”reset” value=”Reset Form” name=”B2”

style=”front-family: Book Antiqua; font-size: 10pt; background-color:

rgb(0,0,128); color: rgb (255, 255, 255)”></td>

</tr>

</table>

</form>

<p align=”center”>nbsp;</p>

<p align=”center”><small><font

face=”Arial”><small><strong>&nbsp;</strong></small></font></small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

</p>

<hr size=”4” color=” #800000” align=”center”>

<p align=”center”><small><small><strong>MibitoNet Company, Istanbul&nbsp;

</strong><a

Form Kolleksiyonu Kullanan Bir .asp

href=”mailto:mibito@softhome.net”><img src= ”HH01580A.gif” width=”44” height=”36”

alt=”HH01580A.gif (1311 bytes)”></a></small></small></p>

<p align=”center”>&nbsp;</p>

<p align=”center”>&nbsp;</p>

<p align=”center”>&nbsp;</p>

<p align=”center”>&nbsp;</p>

<p align=”center”>&nbsp;</p>

<p align=”center”>&nbsp;</p>

<p align=”center”>&nbsp;</p>

<p align=”center”>&nbsp;</p>

<p align=”center”>&nbsp;</p>

<p align=”center”>&nbsp;</p>

<% rstemp.close

set rstemp=nothing

conntemp.close

set conntemp=nothing

%>

</body>

</html>

İkinci .asp’de instert deyiminin pozitif sonuçlanması

<html>

<head>

<meta http-equiv=”Content- Type” content=”text/html; charset=windows-1254”>

<title>Insertion</title>

</head>

<body bgcolor=”#FFFF80”>

<div align=”center”><center>

<table border=”1” width=”597” height=”1”>

<tr>

<td width=”166” height=”1” background=”Duvar.jpg”><p

align=”center”><img src=”STUGA.gif”

width=”143” height=”91” alt=”STUGA.gif (6111 bytes)” >< /td>

<td width=”223” height=”1” valign=”bottom” ><p align=”center” ><font

face=”Copperplate Gothic Bold” color=”#800000”

size=”4”><strong>Net SPage</strong></font></p>

<p align=”center”><font face=”Lucida Handwriting” color=”#800000”

size=”4”>REAL ESTATE</font></td>

<td width=”190” height=”1” background=”Duvar.jpg”><p

align=”center”><img src=”STUGA.gif”

width=”143” height=”91” alt=”STUGA.gif (6111 bytes)” ></td>

</tr>

</table>

</center></div>

<p align=”center”><font face=”Arial”

color=”#000080” ><strong><big>INSERTION</big></strong></font></p>

<hr size=”5” color=”#800000”>

<!–#INCLUDE VIRTUAL=”program/reelestate/adovbs.inc” –>

<%

Request.form (”eleman”) Nesnesinin Kullanımı

set rstemp=Server.CreateObject(”ADODB.Recordset”)

connectme= ”DSN=Real”

category=request.form(”menu1”)

if category=”other”then

category=request.form(”T13”)

end if

location=request.form(”menu2”)

if location=”other” then

location=request.form(”T14”)

end if

Status=request.form(”D1”)

room=request.form(”T7”)

if room=”” then

introom=O

else

introom=int(room)

end if

bathroom=request.form(”T6”)

if bathroom=”” then

intbath=O

else

intbath=int(bathroom)

end if

story=request.form(”T5”)

if story=”” then

intstory=O

else

intstory=int(story)

end if

balcony=request.form(”T8”)

if balcony=”” then

intbalcony=O

else

intbalcony=int(balcony)

end if

heat=request.form(”menu10”)

if heat=”other” then

heat=request.form(”T17”)

end if

province=request.form(”T9”)

city=request.form(”T10”)

extra=request.form(”S1”)

if ((category=””) or (location=””) or (heat=””) or (province=””) or (city=””)) then&>

<p><font face=”Book Antiqua” color=”#000080”><big>You should fill the form completely <a

href=”newadvert.asp”>Back</a></big></font></p>

<%response.end

else

id=session(”id”)

sqltemp = ”insert into RealEstate

(ID, Category, Location, Province, City, Conditions, Status, Furnished, No_of_rooms, No_of_bathrooms,No_of_balconies, Heating, Story, Size, Garage, Garden, Price, Extra)”

sqltemp=sqltemp & ”values(‘ ” &id & ” ‘ ”

sqltemp=sqltemp& ”,’ ” &category& ” ‘ ”

sqltemp=sqltemp& ”,’ ” &location& ” ‘ ”

sqltemp=sqltemp& ”,’ ” &province& ” ‘ ”

sqltemp=sqltemp&”,’ ” &city& ” ‘ ”

sqltemp=sqltemp&”,’ ” &conditions&” ‘ ”

sqltemp=sqltemp& ”,’ ” %Status& ” ‘ ”

if furnished=”ON” then

sqltemp=sqltemp& ”,’ yes’ ”

else

sqltemp=sqltemp&”, ‘no’ ”

end if

sqltemp=sqltemp& ”,” &introom

sqltemp=sqltemp& ”,” &intbath

sqltemp=sqltemp& ”,” &intbalcony

sqltemp=sqltemp& ”,’ ” & heat & ” ‘ ”

sqltemp=sqltemp& ”, ” &intstory

sqltemp=sqltemp& ”, ” &intsize

if garage=”ON” then

sqltemp=sqltemp& ”,’yes’ ”

else

sqltemp=sqltemp& ”,’no’ ”

end if

if garden=”ON” then

sqltemp=sqltemp&”,’yes’ ”

else sqltemp=sqltemp& ”,’no’ ”

end if sqltemp=sqltemp& ”,” &intprice

sqltemp=sqltemp& ”, ‘ ” &extra& ” ‘)”

rstemp.open sqltemp,connectme

%>

<p><font face=”Book Antiqua” color=”#000080”>Your advertisement is stored successfully</font></p>

<%session.abandon

end if

%>

<p>&nbsp;</p>

<p align=”center”><a href=”real index.htm”>REAL ESTATE HOME</a></p>

<hr size=”5” color=”#800000”>

<p align=”center”><small><small><strong><a

href=”mailto:mibito@softhome.net”>MibitoNet

Compay, Istanbul</a>&nbsp;</strong></small></small>&nbsp; <a

href=”mailto:mibito@softhome.net”><img src=”HH01580A.gif”

alt=”HH01580A.gif (1311 bytes)”

width=”50” height=”44”></a>&nbsp;&nbsp; </p>

</body></html>

Örneğin, tanımladığımız emlağın birinci formdaki C1 alanına girilen değerinden bahçesi(garden) bulunup bulunmadığı belirlenmektedir. Bu tespiti yapabilmek içinse request.form koleksiyonu kullanılmaktadır.

<td width=”25%” height=”13”>Garden</td>

<td width=”25%” height=”13” ><input type=”checkbox” name=”C1”

Birinci formda tanımlanan C1 isimli işaret kutusu ile girişi yapılan emlağın bahçesi bulunup bulunmadığı belirlenmektedir. İkinci formda ise aşağıdaki gibi insert deyimi için C1 değişkeni birinci formdan çağırılmaktadır.

garden=request.form(”C1”)

Bir formdaki tüm elemanları bir döngü içerisinde istemek mümkündür. Aşağıdaki kod bunu gerçekleştirmektedir.

<%

kontrol adı ‘<% = eleman%>’

‘<% = Request.Form(eleman)%>’ <BR>

< % Next % >

Bu şekilde verinin tekrarı durumunda elemanların hepsi adlandırılır ya da numaratör kullanılarak Jscript’le birlikte form kolleksiyonunu tekrarlayabiliriz.

<%

// Yeni Enumerator nesnesi oluştur

eleman=new enumerator(Request.Form)

// Kolleksiyon boyunca çevirim oluştur

while (!eleman.atEnd()) {

// Geçerli elemnı al

i = eleman.item()

//Göster

Response. Write(”Control adı’ ” + i

‘+Request.Form(i)+” ‘ <BR>”)

// Sonraki elemana git

eleman.moveNext()

} %>

Grup ilişkilerinin bilgilerinde çoğu zaman formlar yaratmaya ihtiyaç duyarız. Örneğin; forma iki tane radyo düğmesi ekleyebiliriz. Bu durumda seçim yapabilmemize olanak sağlar. Onlara tek değer vererek form kolleksiyonunda gelmesi durumunda ayırdedilmesini sağlamış oluruz.

<INPUT TYPE =RADIO NAME = cinsiyet VALUE=”Kadın”> Kadın

<INPUT TYPE =RADIO NAME =cinsiyet VALUE =”Erkek” > Erkek

Tarayıcıya bu sayfayı sunulduğu zaman, setde geçerli olan radyo düğmesi değerlerini içerir ve kontrol eder. Sorgu cümleciğinde name/value çiftinin (cinsiyet = Erkek) önemini burada bir kez daha anlamış bulunuyoruz.

Radyo düğmeleri bir gruba ait olma özelliğine sahiptir; bu sadece kullanıcının gruptan bir tanesini seçebileceğini ifade eder. Düğmelerden birine tıklandığı zaman aynı grup içerisindeki diğer düğmeler devre dışı kalır. Yapmamız gereken grubu temsil etmesini tarayıcıya anlatırken bütün değerlere Name özelliğini vermektir. Fakat daha önce de kodladığımız gibi VALUE özelliği kendini gösterir.

Bu geleneksel window program tekniklerinden tamamen farklıdır. Option Frame’de olduğu gibi tüm kontrol ilişkilerini yine aynı çeşit konteynır kontrol merkezine yerleştirilir. Sonuçta, option frame’in değeri seçili düğmenin indeksi olacaktır.

<FORM Name = ”kullanıcı” ACTION=”Sorgu.asp”METHOD=”GET” >

<H2> Detay Bilgilerini Giriniz </H2><P>

<PRE>

kurumunuzda kaç bilgisayar vardır?

<INPUT TYPE=”RADIO”     NAME=”grbil” VALUE=”0-9”>0-9

<INPUT TYPE=”RADIO”     NAME=”grbil” VALUE=”10-49”>10-49

<INPUT TYPE=”RADIO”     NAME=”grbil” VALUE=”50-99” > 50-99

<INPUT TYE=”RADIO”       NAME=”grbil” VALUE= ”Bilinmiyor” > Bilinmiyor

</PRE>

<P>

<INPUT TYPE=RESET    VALUE=”Sil”>

<INPUT TYPE=SUBMIT  VALUE=”Yolla”>

</CENTER>

</FORM>

Önceleri, form elemanının adını ve değerini hemen aldık. Ancaki yukarıdaki örnekte her NAME’in dört olası değeri vardır. Daha önce de yaptığımız gibi sadece birinin VALUE değeri bulup getirilir.

bilgisayarlar = Request.Form (”grbilg”)

Bu bize formda yapılan seçimlerden 10 ile 49 arasında sonuç verebilir. Bununla birlikte form bazı durumlarda bir üye tarafından çeşitli değerlere yükseltilebilir. Bu değerler düzen açısından içeriklerini kullanmaya müsaittirler ve bunları kullanmak için ele alabiliriz:

Deger=Request.Form(”KontrolAdı”)(indeks)

Tek problemimiz her bir kolleksiyon üyesinin değerini görüntülemek. Bunu yapabilmemiz için kolleksiyonda başka özellikte olanı kullanmalıyız.

Bu gönderiyi paylaş

Bir cevap yazın