• 06-01-2008, 14:03:09
    #1
    Merhaba Arkadaşlar Microsoft.XMLHTTP konusunda bir kaç araştırma yaptıktan sonra biraz yol aldım fakat bir noktada kesildim oda zaten son varmak istediğim yer

    sorunum şu elimde bir sayfada belli aralıklardaki verileri alıp veri tabanına kayıt etmem için gerekli kod var:
    <%
    Function BinaryToString(Binary) 
        Dim cl1, cl2, cl3, pl1, pl2, pl3 
        Dim L 
            cl1 = 1 
            cl2 = 1 
            cl3 = 1 
            L = LenB(Binary) 
        Do While cl1<=L 
            pl3 = pl3 & Chr(AscB(MidB(Binary,cl1,1))) 
            cl1 = cl1 + 1 
            cl3 = cl3 + 1 
        If cl3>300 Then 
            pl2 = pl2 & pl3 
            pl3 = ""
            cl3 = 1 
            cl2 = cl2 + 1 
        If cl2>200 Then 
        pl1 = pl1 & pl2 
        pl2 = "" 
        cl2 = 1 
        End If 
        End If 
        Loop 
        BinaryToString = pl1 & pl2 & pl3 
    End Function
    
    On error resume next
    site = "http://www."& adres &""
    
    Set HTTP = Server.CreateObject("Microsoft.XMLHTTP" )
      HTTP.Open "Get" , site, False
      HTTP.SEnd
    Sayfa_Al = BinaryToString(HTTP.ResponseBody)
    Set HTTP = Nothing
    
    
    if err then
    
     response.write "HATA: "&err.description
    
     else
      Basla = InStr(1,Sayfa_Al, "<title>" , 1) + Len("<title>" )
      Bitir = InStr(Basla, Sayfa_Al, "</title>" , 1) - Basla
      Title = Mid(Sayfa_Al, Basla, Bitir)
      
      Basla = InStr(1,Sayfa_Al, "<meta name=""keywords"" content=""" , 1) + Len("<meta name=""keywords"" content=""" )
      Bitir = InStr(Basla, Sayfa_Al, """>" , 1) - Basla 
      Keyws = Mid(Sayfa_Al, Basla, Bitir)
      
      Basla = InStr(1,Sayfa_Al, "<meta name=""description"" content=""" , 1) + Len("<meta name=""description"" content=""" )
      Bitir = InStr(Basla, Sayfa_Al, """>" , 1) - Basla 
      Descs = Mid(Sayfa_Al, Basla, Bitir)
     end if
    %>
    Ayrıca bir sayfadaki xxx.asp?id= den id si istediğim aralıkta ki sayfaları tamamen çekip veri tabanına kayıt etme kodu var
    <%
    abc = "http://beyazperde.mynet.com/film.asp?id="
    
    Public Function alsana(al_gali)
    	Set objalsana = Server.CreateObject("Microsoft.XMLHTTP" )
    	objalsana.Open "GET",al_gali,FALSE
    	objalsana.sEnd
    	alsana = objalsana.Responsetext
    	SET objalsana = Nothing
    End Function
    
    Set baglanti = Server.CreateObject("ADODB.Connection")
    baglanti.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("db.mdb")
    
    for i = 3817 to 3820
    	url = abc & i
    	strURL = url
    	strVeri = alsana(strURL)
    	sonuc = Mid(strVeri, 1, 999999999)
    
    	SQL = "Select * from filmler where url ='" & url & "'"
    	set rs = Server.CreateObject("ADODB.RecordSet")
    	rs.open SQL,baglanti,1,3
    
    	if rs.recordcount = 0 then rs.addnew
    	rs("url") = url
    	rs("sonuc") = sonuc
    	rs.update
    	Set rs=Nothing
    next
    
    Baglanti.Close
    Set Baglanti=Nothing
    %>
    gel gelelim istediğim ikisini birleştirmek baktım kafam karıştı. işin içinde çıkamadım yardım eden belki çıkar diye buradan sormak istedim.

    yani bir sayfadaki istediğim id aralığındaki sayfa kodları arasında istediğim veriyi veri tabanına kayıt etmek.

    umararım anlatabilmişimdir. Şimdiden yardım eden arkdaşlarda Allah Razı olsun
  • 02-02-2008, 13:07:18
    #2
    Eposta Aktivasyonu Gerekmekte
    tam olarak yapmaya çalıştığın nedir?
    xmlhttp ile beyazperdeden ne çekiyorsun? yani ordaki id yi senmi belirliyorsun? veritabanıyla olan olay nedir açıklarsan yardımcı olurum
  • 04-02-2008, 19:21:53
    #3
    sorunu her zmaanki gibi kendim deneyerek çözdüm çekmek istediğim film adi ,açıklamaları kategoriler halindeydi yaptım zaten.ama daha bu konuda bir kaç kafamada takıan şey var zamanla artık.

    mesajın için teşekkürler düşünmen yeterli
  • 04-02-2008, 19:48:42
    #4
    Eposta Aktivasyonu Gerekmekte
    önemli değil, yardımcı olmak isterdim
    ancak deneme yanılma ile daha iyi öğreniliyor
    kodlar senin için çok gizlilik taşımıyorsa konuda paylaşabilirsin, herkes yararlansın...
    xmlhttp de sorun yaşarsan bizimlede paylaş bizde sorununu çözerken geliştiririz kendimizi...
  • 04-09-2009, 15:06:52
    #5
    <%
    Function BinaryToString(Binary) 
        Dim cl1, cl2, cl3, pl1, pl2, pl3 
        Dim L 
            cl1 = 1 
            cl2 = 1 
            cl3 = 1 
            L = LenB(Binary) 
        Do While cl1<=L 
            pl3 = pl3 & Chr(AscB(MidB(Binary,cl1,1))) 
            cl1 = cl1 + 1 
            cl3 = cl3 + 1 
        If cl3>300 Then 
            pl2 = pl2 & pl3 
            pl3 = ""
            cl3 = 1 
            cl2 = cl2 + 1 
        If cl2>200 Then 
        pl1 = pl1 & pl2 
        pl2 = "" 
        cl2 = 1 
        End If 
        End If 
        Loop 
        BinaryToString = pl1 & pl2 & pl3 
    End Function
    
    On error resume next
    site = "http://www.siteadı"
    
    Set HTTP = Server.CreateObject("Microsoft.XMLHTTP" )
      HTTP.Open "Get" , site, False
      HTTP.SEnd
    Sayfa_Al = BinaryToString(HTTP.ResponseBody)
    Set HTTP = Nothing
    
    
    if err then
    
     response.write "HATA: "&err.description
    
     else
      Basla = InStr(1,Sayfa_Al, "<title>" , 1) + Len("<title>" )
      Bitir = InStr(Basla, Sayfa_Al, "</title>" , 1) - Basla
      Title = Mid(Sayfa_Al, Basla, Bitir)
      response.write Title &"<br /><br />"
      
      Basla = InStr(1,Sayfa_Al, "<meta name=""keywords"" content=""" , 1) + Len("<meta name=""keywords"" content=""" )
      Bitir = InStr(Basla, Sayfa_Al, ">" , 1) - Basla 
      Keyws = Mid(Sayfa_Al, Basla, Bitir)
      response.write Keyws &"<br /><br />"  
      
      Basla = InStr(1,Sayfa_Al, "<meta name=""description"" content=""" , 1) + Len("<meta name=""description"" content=""" )
      Bitir = InStr(Basla, Sayfa_Al, ">" , 1) - Basla 
      Descs = Mid(Sayfa_Al, Basla, Bitir)
      response.write Descs &"<br /><br />"  
        
      Basla = InStr(1,Sayfa_Al, "<hr noshade size=""1"">" , 1) + Len("<hr noshade size=""1"">" )
      Bitir = InStr(Basla, Sayfa_Al, "</font>" , 1) - Basla
      icerik = Mid(Sayfa_Al, Basla, Bitir)
      response.write icerik &"<br /><br />"
    
     end if
     
    %>
    siteden bu şekilde verileri görebiliyorum ama bunu nasıl db ye yazdıracağım. bir fikri olan varmı ?
  • 10-09-2009, 22:33:31
    #6
    beyazperdenin rssinden ne çektiğini bende tam olarak anlayamadım