• 27-06-2009, 11:20:47
    #1
    Set xml = Server.CreateObject("Microsoft.XMLDOM")
        xml.async = False
        xml.load (Server.MapPath("XML_doc/bankalar.xml"))
    Dim bankaadi
        set    bankaadi = xml.getElementsByTagName("bankaAdi")
    
     for i=0 to bankaadi.length-1
    
    bag.execute("insert into bankalar (bankaadi) values ('"&bankaadi.item(i).childNodes(0).text&"')")
        next
    Yukarıdaki şekilde xml i parse edip veriyi database e atıyorum. Yalnız burada banka adı

    <bankaAdi>Yapı Kredi Bankası</bankaAdi>

    gelirse sorun yok fakat

    <bankaAdi />

    şeklinde gelirse boş olduğundan dolayı hata veriyor. Hata vermeden işleme nasıl devam ettirebilirim?
  • 27-06-2009, 11:39:56
    #2
    Bankaadi IsNull() mu / Empty string mi kontrol edebilir, eğer null ya da empty string ise bankaadi="none" yazabilir ya da kayıt işlemini IsNull() dan sonra yapmayı deneyebilirsiniz.
  • 27-06-2009, 11:49:57
    #3
    dreammaker_tr adlı üyeden alıntı: mesajı görüntüle
    Bankaadi IsNull() mu / Empty string mi kontrol edebilir, eğer null ya da empty string ise bankaadi="none" yazabilir ya da kayıt işlemini IsNull() dan sonra yapmayı deneyebilirsiniz.

    Tam olarak bu şekilde geliyor

    <bankaAdi xsi:type="xsd:string" xsi:nil="true"/>

    Dün geceden beri o kontrolü yapabilmek için çok fazla deneme yaptım ama bir sonuç alamadım. Ayrıca hatayı indexini almaya çalışırken alıyorum.

    item(....).childNodes(...)

    Hata çıktısı bu şekilde.
  • 27-06-2009, 12:23:36
    #4
     set    bankaAdlari = xml.getElementsByTagName("bankaAdi")
    
    for i=0 to bankaAdlari.length-1
    bankaAdi = bankaAdlari[i].getElementsByTagName("bankaAdi")[0];
    
    if (bankaAdi.childNodes.length) {
      banka = bankaAdi.childNodes[0].nodeValue;
    } else {
     banka = "none"
    }
    next
    Şeklinde deneyebilirsiniz.
  • 27-06-2009, 13:01:15
    #5
    Çok teşekkür ediyorum çok sağol.

    if bankaadi.item(i).childNodes.length>0 then
    banka = bankaadi.item(i).childNodes(0).nodeValue
    else
    banka= "none"
    end if

    Bu şekilde sorun halloldu çok teşekkür ediyorum tekrar. Sağolasın herşey için.