• 06-03-2009, 02:41:33
    #1
    Asp ile aşağıdaki xml şablonuna uygun bilgileri ekrana nasıl yazdırabilirim, ilgilenecek arkadaşlara şimdiden teşekkürler.

    dosya.xml

    <?xml version="1.0" encoding="ISO-8859-9"?>
    <root>
    <urun>
    <stokkodu> AC123 </stokkodu>
    <marka> Intel </marka>
    <ozellik tanimi="Mimari"> Core 2 Duo </ozellik>
    <ozellik tanimi="Hız"> 2.8 Ghz </ozellik>
    </urun>
    </root>

    Ekranda Gorunmesini istediğim şekli

    Stok kodu : AC123
    Markası : Intel
    Mimari : Core 2 Duo
    Hız : 2.8 Ghz
  • 06-03-2009, 04:22:08
    #2
    sana basit bi şekilde örnek yapayım
    <%
    adr="http://www.site.com/xmldosyasi.xml"
    set StrHTTP = Server.CreateObject("Microsoft.XMLHTTP")
    StrHTTP.Open "GET" ,adr, false
    StrHTTP.Send
    kur = StrHTTP.Responsetext
    Set StrHTTP = Nothing


    kes = split(kur,"<stokkodu>")
    kes2=split(kes(1),"</stokkodu>")
    link=kes2(0)

    response.write "staok Kodu:"& link &""
    %>
  • 06-03-2009, 18:48:16
    #3
    Kimlik doğrulama veya yönetimden onay bekliyor.
    XMLDOM kullanarak tüm elementlere erişmen mümkün.
    getElementsByTagName ile tag lere erişiyorsun.
    childNodes ile o elementin altındaki diğer elementlere döngü ile erişiyorsun
    getAttribute ile element için tanımlanmış özeliğe erişebiliyorusun.

    Aşağıdaki gibi kullanabilrisin denedim çalışıyor.

    <%
     Set XML=Server.CreateObject("Microsoft.XMLDOM")
     Set Urunler=Server.CreateObject("Microsoft.XMLDOM")
     XML.async=False
     XML.Load (Server.MapPath("dosya.xml"))
     If XML.parseError.errorCode = 0 Then 
    	 Set Urunler=XML.getElementsByTagName("urun")
    	 For i=0 to (Urunler.Length-1)
    	    For j=0 To (Urunler(i).childNodes.Length-1)
    	        Select Case Urunler(i).childNodes(j).nodeName
    		        Case "marka"
    		          marka=Urunler(i).childNodes(j).text
    		        Case "stokkodu"
    		          stokkodu=Urunler(i).childNodes(j).text
    		        Case "ozellik"
    				   oz=Urunler(i).childNodes(j).getAttribute("tanimi")
    				   Select Case oz
    				       Case "Mimari"
    					       ozellik_mimari=Urunler(i).childNodes(j).text
    					   Case "Hız"
    					       ozellik_hiz=Urunler(i).childNodes(j).text
    				   End Select				  
    		   End Select 
    		Next
    		Response.Write("<br>"&(i+1)&".Ürün ")
    		Response.Write("<br> Stok Kodu : "&stokkodu& " <br> Marka : "&marka&"<br> Mimari : "&ozellik_mimari&"<br> Hız : "&ozellik_hiz)
    		REsponse.Write("<br>*******************")
    	 Next
     Else
    	Response.Write(objXML.parseError.errorCode)
     End If
    %>
    Çıktısı şu şekilde sen kendine göre düzenlersin
    1.Ürün 
    Stok Kodu : AC123 
    Marka : Intel
    Mimari : Core 2 Duo
    Hız : 2.8 Ghz
    *******************
    2.Ürün 
    Stok Kodu : ASDFG 
    Marka : AMD
    Mimari : AMD X
    Hız : 3.2 Ghz
    *******************
    3.Ürün 
    Stok Kodu : TTTTT 
    Marka : XXXXX
    Mimari : YYYYY
    Hız : 2.0 Ghz
    *******************
    Xml dosyasınıda şu şekilde bi kaç kayıt daha ekleyip kullandım.
    <?xml version="1.0" encoding="ISO-8859-9"?>
    <root>
    	<urun>
    		<stokkodu> AC123 </stokkodu>
    		<marka> Intel </marka>
    		<ozellik tanimi="Mimari"> Core 2 Duo </ozellik>
    		<ozellik tanimi="Hız"> 2.8 Ghz </ozellik>
    	</urun>
       <urun>
    		<stokkodu> ASDFG </stokkodu>
    		<marka> AMD </marka>
    		<ozellik tanimi="Mimari"> AMD X </ozellik>
    		<ozellik tanimi="Hız"> 3.2 Ghz </ozellik>
    	</urun>
       <urun>
    		<stokkodu> TTTTT </stokkodu>
    		<marka> XXXXX </marka>
    		<ozellik tanimi="Mimari"> YYYYY</ozellik>
    		<ozellik tanimi="Hız"> 2.0 Ghz </ozellik>
    	</urun>
    </root>