Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Ajax ile Geri Sayım

Arkadaşlar bir site üzerinde çalışıyorum ama tek eksiğim geri sayım yaptırmak

Geri Sayım Yapılacak ancak kaldığı yerden devam etmesi lazım

böyle bir işlem için bana yardım edebilecek olan arkadaşlara şimdiden teşekkürler..
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Cevaplar

  • bulentbozdag adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    2 cevap - 1 soru
    merhaba 
    
    arkadaşım bunun için jquery eklentisi var. onu ve kullanımını anlatayım sana: 
    
    hangi dili kullanıyorsun keşke yazsaydın ben asp ile örnek vereyim. 
    
    
    http://rapidshare.com/files/436233385/jquery.rar
    
    öncelikle yukardaki linkten js dosyalarını indir. 
    
    
    <asp> 
    
    <% 
    suretam = "11.12.2010"&" "&"23:59:59" 
    bolum = split(suretam," ") 
    soltarafim = split(bolum(0),".") 
    
    ayimx=soltarafim(1) 
    gunumx=soltarafim(0) 
    yilimx=soltarafim(2) 
    
    sagtarafim=split(bolum(1),":") 
    saatimx=sagtarafim(0) 
    dakikamx=sagtarafim(1) 
    saniyemx=sagtarafim(2) 
    '08-17-2010 17:35:00 
    %> 
    
    
    <div id="sayacim" ></div> 
    <script type="text/javascript" charset="UTF-8"> 
    
    jQuery().ready(function(){var sayacim = new Date(<%=yilimx%>,<%=ayimx-1%>,<%=gunumx%>,<%=saatimx%>,<%=dakikamx%>,<%=saniyemx%>);var myid = "#sayacim";$('#sayacim').countdown({format: 'hMS',compact: false,description: ' ',timezone: +2,serverSync: serverTime,onTick: sayacimTicker,tickInterval: 1,expiryText: "---",alwaysExpire: true,until: sayacim});function sayacimTicker(periods) {if (periods[3] == 0 && periods[4] == 0 && periods[5] == 0 && periods[6] <= 40) {$('#sayacim').addClass('countdown_highlight');$('.countdown_sec').addClass('countdown_highlight').removeClass('countdown_sec');}
    if (periods[3] == 0 && periods[4] == 0 && periods[5] == 0 && periods[6] == 0 ) { $('#snip_blind').hide(); } 
    }}); 
    
    
    function serverTime() { 
    var time = null; 
    $.ajax({url: 'http://test.sunucununadi.com/al.php', 
    async: false, dataType: 'text', 
    success: function(text) { 
    time = new Date(text); 
    }, error: function(http, message, exc) { 
    time = new Date(); 
    }}); 
    
    
    return time; 
    } 
    
    </script> 
    
    </asp> 
    
    şimdi kısaca:
    
    "new Date(<%=yilimx%>,<%=ayimx-1%>,<%=gunumx%>,<%=saatimx%>,<%=dakikamx%>,<%=saniyemx%>)"   kısmına sırayla: yıl,ay,gün,saat,dakika,saniye  gelecek örn: 2010,12,11,10,04,00
    
    

    bu tarih bitiş tarihi bu tarihten geri sayım yapıyor.


    jquery i kullanarak eklenti "sayacim" div ine geri sayım ı yazıyor. burada önemil olan kişi makinasındaki tarihi ileri aldığında sayacın erken bitti dememesi. bunun içinde al.php dosyası ile sekronize çalışıp server saatini alıyor böylece güvenlik sorunu ortadan kalkıyor.

    css dosyaları
    • bulentbozdag adlı üyenin fotoğrafı bulentbozdag
      kodlar yukarıda pek anlaşılır çıkmadı. ek olarak tümünü yeni linkledim.

      yukarıdaki mesajda açıklamayı es geçtiğim yer olmuş. <%=ayimx-1%> kısmında bitiş tarihinin "ay" ından 1 ay düşmek gerekiyor neden bilmiyorum ama böyle yapınca sağlıklı çalışmıştı.


      yeni link: http://rapidshare.com/files/436234583/jquery.rar
      10 yıl önce yazılmış
    • ogoveli adlı üyenin fotoğrafı ogoveli
      hocam çok teşekkür ederim bende zaten asp kullanıyordum ama tek anlamadığım nokta şu ben süre bittikten sonra o urunu database den offline konumuna almam lazım bunun için ne yapmam lazım he birde burda al.php ne için kullanılacak..
      10 yıl önce yazılmış
    • bulentbozdag adlı üyenin fotoğrafı bulentbozdag
      al.php dosyasına bakarsan ekrana server tarihini saniyeye kadar yazdırıyor.

      normal gerisayım sayaçlarında jquery ile ya da javascript ile yazılan gerisayım örneklerinin nerdeyse hepsine şu açık var ( projeye göre açık :) ): örnek çalışırken bilgisayarın saatini ileri ya da geri alırsan sayaç sapıtıyor. bunun için sayacın server saatini baz alması gerekiyor. al.php ye her saniye bağlanıp geri sayımı güncelliyor. yani server saatini alıyor.

      bence ürünü offline a şöyle alabilirsin. sayfanın en başına kontrol ekle örn:

      if urun("bitistarihi") < now() then
      urun("aktif")=0
      end if

      sonrada

      aşağıda sayaç kısmını

      if urun("aktif") = 0 then
      response.write("bu ürünün satış süresi bitmiştir..")
      else

      'SAYAÇ KODLARI

      end if
      10 yıl önce yazılmış
    • bulentbozdag adlı üyenin fotoğrafı bulentbozdag
      kusura bakmayın. cevap yolladıktan sonra keşke düzenle kısmı olsa ard arda mesaj atmak zorudna kalmazdım.

      ek olarak mesela süre bitince yönelendirme ya da sayfayı restart yaparsın ve bi önceki mesajım da yazdığım if kontrollerini yaptırabilirisin.

      Yönelndirme:

      asp sayfasındaki kodda: expiryText: "---" var bunun yanına : expiryUrl: 'http://jquery.com',

      koyarsan bitince yönlenme olur.

      daha fazlası için aşağıda yazarının örneklerine bakabilirsin.

      http://keith-wood.name/countdown.html



      Kolay gelsin.
      10 yıl önce yazılmış
    • ogoveli adlı üyenin fotoğrafı ogoveli
      hocam tekrar sizi rahatsız ediyorum ama

      bu geri sayım sistemi internet exp. de çalışmıyor.
      10 yıl önce yazılmış
    • bulentbozdag adlı üyenin fotoğrafı bulentbozdag
      çalışıyor bendeki arkadaşım. css in de sorun olabilir.
      10 yıl önce yazılmış