• 11-08-2009, 18:42:37
    #1
    Merhaba Arkadaşlar,
    Parça Kontör Sitem var ve bunu bir başka siteye bağlamak istiyorum.Örnek Asp kodu ve parametler mevcut fakat bunu kendi siteme nasıl uyarlayacağımı bilmiyorum.
    Sorum şu veritabanındaki siparişleri listelelim xmlhttp ile post ettirmek istiyorum.Örnek kodda sadece bir siparişi nasıl göndereceği yazıyor.Vtden verileri buna nasıl uyarlayacağım.Örn kodlar aşağıdaki gibi
    Yeni Kontor Talimatı
    Url
    http://www.bostancikontor.com/services/talimat_ver.php
    Parametreler
    bayi_kodu : Bayi Kodu
    sifre : Şifre
    operator : Avea,Turkcell, VodafoneCepOg, VodafoneCepSaat olabilir
    gsmno : Kontör transfer etmek istediğiniz numara
    kontor : Transfer etmek istediğiniz kontör miktarı
    tekilnumara : Kendi sisteminizdeki tekil transfer numarası
    tip : parca-tam
    Örnek
    bayi_kodu : deneme
    sifre : 1234
    operator : Avea
    gsmno : 05111111111
    kontor : 20
    tekilnumara : 654 (local işlem numarası)
    tip : parca
    http://www.bostancikontor.com/servic...=654&tip=parca
    Örnek Asp Kodu
     Response.Buffer = True  Dim objXMLHTTP, xml
      ' Create an xmlhttp object:
      Set xml = Server.CreateObject("Microsoft.XMLHTTP")
      ' Or, for version 3.0 of XMLHTTP, use:
      ' Set xml = Server.CreateObject("MSXML2.ServerXMLHTTP")
    +
      ' Opens the connection to the remote server.
      xml.Open "GET", "http://www.bostancikontor.com/services/talimat_ver.php?bayi_kodu=deneme&sifre=1&operator=Avea&kontor=26&gsmno=05111111111&tekilnumara=654&tip=parca", False
      ' Actually Sends the request and returns the data:
      xml.Send
      Response.Write xml.responseText
    Başarılı İşlem
    1:yukleme talebi islem listesine alindi
    Hatalı İşlem
    2:bayikodu yada şifre geçersiz
    3:Bu operatör için işlem yapılamıyor. Avea,Turkcell,Vodafone olabilir
    4:Hatali kontor miktari, parcakontorde satılmayan kontor miktarı
    5:telefon numarasi hatali
    6:yetersiz bakiye
    7:aktif operator bulunmuyor, Sistemde yükleme yapacak aktif eleman bulunmuyor
    8:tekil numara daha önceden kayitli
    9:mesai saati dışı
    Durum Sorgulama
    Url
    http://www.bostancikontor.com/servic...imat_takip.php
    Parametreler
    bayi_kodu : Bayi Kodu
    sifre : Şifre
    tekilnumara : İşleme verdiginiz tekil numara
    Örnek
    bayi_kodu : deneme
    sifre : 1234
    tekilnumara : 654
    http://www.bostancikontor.com/servic...ekilnumara=654
    Örnek ASP kodu
      Response.Buffer = True  Dim objXMLHTTP, xml
      ' Create an xmlhttp object:
      Set xml = Server.CreateObject("Microsoft.XMLHTTP")
      ' Or, for version 3.0 of XMLHTTP, use:
      ' Set xml = Server.CreateObject("MSXML2.ServerXMLHTTP")
      ' Opens the connection to the remote server.
      xml.Open "GET", "http://www.bostancikontor.com/services/talimat_takip.php?bayi_kodu=deneme&sifre=1234&tekilnumara=654", False
      ' Actually Sends the request and returns the data:
      xml.Send
      Response.Write xml.responseText
      Set xml = Nothing
    api_gonderim.asp diye bir sayfa oluşturup vtden verileri çekip yukarıdaki gibi siparişleri otomatik olarak göndermek istiyorum.Bu kodları kendime göre uyarlayamadım.Vt den gelen verileri yukarıdaki kodlara nasıl uyarlayabilrim yardımcı olursanız sevinirim.
    Teşekkürler..
    Not:Yapabilecek arkadaşlara makul bir ücret ödeyebilirim.Kesin çalışması karşılığında.
  • 11-08-2009, 19:37:36
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Zamanında online sms gönderimi ile ilgili geniş bir sistem yazmıştım. Bu tür apiler kullanılıyordu. Sanırım yardımcı olabilirim.

    Parametrelerin hepsi veritabanından mı gelecek ? Bazıları form ile mi post edilmiş olacak ? gibi bilgilere göre kod değişiklik gösterecektir.

    Bu konuda bilgi verirsen apilerden bir tanesini senin için hazırlayabilirim. Kalanını da sen halledersin.
  • 11-08-2009, 21:38:10
    #3
    Hocam şimdi siparişleri veri tabanından listeleyip otomatik gönderme yapacağız.Mesela Db de sipariş adlı tabloadn numara operator işlemid ve sipariş türünü (parca-tam) vtden çekeceğiz sonra xmlhttp ile ilgili siteye pot edilecek .Herhangi bi form falan kullanılmayacak yani, gelen sipariş otomatik gönderilecek.sanırım bir sayfanın sürekli açık olması gerekiyormuş.15 sn de bir refresh edilmesi de gerekiyormuş.Tam olarak bende bilmiyorum
  • 11-08-2009, 23:48:34
    #4
    OK anladım. veritabanındaki alanları yazarsan örneklerden ilkini yapar ve buraya eklerim. Gerisini sen halledersin.

    kullanılacak olan tablonun alanlarının hepsini yaz ki eksik bir şey varmı onuda kontrol etmiş olalım.

    Bu gece tekrar giremeyebilirim. Yarın gün içinde post ederim. Kolay gelsin.
  • 12-08-2009, 00:06:13
    #5
    Eyvallah çok sağolun..
    Vtdeki Gerekli olan alanların ismi
    1-numara
    2-tur (1 parca 2 tam)
    3-operator(1=turkcell , 2=vodafone,3=avea)
    4-kontor
    5-id (işlem numarası)
    6-durum (0=bekliyor ,1 =yuklendi ,2 =iptal edildi)
    7-bayi (bayi adı)
    8-bayi_id
    9-tarih
    10-afiyat (kontörün alış fiyatı iptal edilmesi durumunda bayiye ücreti geri iade etmek için. Çünkü kontör ücreti sipariş verildiği anda düşülüyor.İptal edilmesi durumunda ücret iade ediliyor.)

    Bu alanlar gerekli işlem için yeterli sanırım.Eksik bişey olursa ben sabah 9 gibi msn açarım(h_bozkurt_3@hotmail.com)

    Gerçkten çok teşekkür ederim.. Allah senden razı olsun..
  • 12-08-2009, 12:10:24
    #6
    MSN'e ekledim seni. Birkaç sorum olucak. Başlangıç için gerekli kodlar hazır, bu soruların cevabına göre küçük değişiklikler gerekicek. Sonrasnda kullanabilirsin.
  • 12-08-2009, 14:36:30
    #7
    Merhaba,
    Aşağıdaki kodlar işini görecektir. En azından fikir sahibi olman konusunda yardımcı olacaktır.

    Fonksiyonumuz

    <%
    Function TalimatVer(id,operator,kontor,gsm,tip,bayikodu)
      strSifre = "sifreniz" ' burayı değiştirirsiniz
      if operator = 1 then 
       opAdi = "turkcell"
      elseif operator = 2 then 
       opAdi = "vodafone"
      elseif operator = 3 then 
       opAdi = "avea" 
      else
       opAdi = "hata"
      end if
     
      if opAdi <> "hata" Then 
       Set xml = Server.CreateObject("Microsoft.XMLHTTP") 
       xml.Open "GET", "http://www.bostancikontor.com/services/talimat_ver.php?bayi_kodu="& bayikodu &"&sifre="& strSifre &"&operator="& opAdi &"&kontor="& kontor &"&gsmno="& gsm &"&tekilnumara="& id &"&tip="& tip, False 
       xml.Send 
     
       sonuc = xml.responseText  
        if Left(sonuc,1) = "1" Then 
         TalimatVer = True
        else
         Talimatver = False
     
         Set objRs1 = Server.CreateObject("ADODb.RecordSet")
         strSQL = "SELECT * FROm siparis where id = "& id
         objRs1.Open strSQL, objConn, 1,3 
          if Not objRs1.EOF Then 
     
           objrs1("aciklama") = sonuc ' Problem nedenini yazdık
     
           objRs1.UPDATE
     
          end if
         objrs1.Close
         Set objrs1 = nothing
     
     
         ' eğer problem oluşması durumunda
         ' ücret müşteri bakiyesine geri iade edilecekse 
         ' buraya iade ile ilgili kodları yazarak tüm işlemleri aynı anda yapma şansınız olur
     
     
        end if
       else   
        Talimatver = False
       end if
     end function
    %>
    Fonksiyonu işleme alacak liste kodları

    <%
     
     
    ' .... veritabanı bağlantısının tapıldığını farz ediyoruz
     Set objRs = Server.CreateObject("ADODb.RecordSet")
     strSQL = "SELECT * FROM siparis WHERE durum=0"' tüm kayıtlar yerine sadece işlem bekleyen kayıtları alıyoruz
     objRs.Open strSQL, objConn, 1,3
     
      if Not objRs.EOF Then
       do While Not objrs.EOF
     
        bIslem = TalimatVer(objRs("id"),objRs("operator"),objRs("kontor"),objRs("numara"),objrs("tur"),objRs("bayi_id"))
     
        if bislem then 
         Response.Write objrs("id") &" nolu Islem tamamlandi<br>"
        else
         Response.Write objrs("id") &" nolu Islemde Sorun oluştu, bilgi veritabanına yazıldı<br>"
        end if
     
       objRs.MoveNext
       Loop
      else
     
       Response.Write"İşlem yapılacak kayıt bulunamadı"
     
      end if
     objRs.Close
     Set objRs = Nothing
    %>
    direk veritabanına sahip olmamam dolayısıyla küçük problemlerin çıkması olasıdır.

    Ama hiçbir zaman problemler, problemlik hayatını uzun sürdüremez

    Elimden gelen yardımı yaparım.

    Kolay gelsin.