wmaraci reklam

Php geri sayım bitince açılan buton

14 Mesajlar 4.134 Okunma
pst.net
wmaraci reklam

IbrahimCY IbrahimCY Ibo Originals Kullanıcı
  • Üyelik 22.08.2016
  • Yaş/Cinsiyet 25 / E
  • Meslek Geliştirici
  • Konum Hatay
  • Ad Soyad I** C**
  • Mesajlar 446
  • Beğeniler 64 / 76
  • Ticaret 6, (%83)

vidotv adlı üyeden alıntı

Merhaba IbrahimCY ,

Yanlış anlamışsam düzelt. Sitende bir buton var ve her kullanıcıya 24 saatte bir olmak şartı ile butonu göstereceksin.

Bunun için şöyle bir yol izleyebilirsin.

Kullanıcı butona tıkladığında saati ve tarihi kullanıcı id si ile bir tabloya kayıt et.

örnek:
kul.id tarih saat

245 20-08.2017 14:00:00

ardından if koşulu ile sayfada kontrol yap tarih -> 21-08.2017 ve saat -> 14:00:00 eşit ise butonu göster eşit değil ise butonu gizle veya pasif yap.


Çok teşekkür ederim aradığım sistem buydu fakat mantığı bir türlü kuramadım.
Not: Peki butona bugün tıklayanın bugün içerisinde bir daha tıklayamamasını nasıl sağlayabilirim ? (Yani günde 1 kez tıklayabilecekler butona)
 

 

Founder & CEO of Pikide Limited.
wmaraci
reklam

eka7a eka7a openix.io Kullanıcı
  • Üyelik 18.06.2013
  • Yaş/Cinsiyet 38 / E
  • Meslek Yazılımcı
  • Konum Bursa
  • Ad Soyad E** K**
  • Mesajlar 651
  • Beğeniler 109 / 313
  • Ticaret 2, (%100)

IbrahimCY adlı üyeden alıntı

Hepinize cevaplarınız için teşekkür ediyorum. eka7a hocam sizin dediğiniz sistemi yapmaya çalıştım fakat süreyi nasıl azaltacağım onu çözemedim.
Yaptığım sistem şu:
- Kullanıcının tıklama saatini veritabanından çekiyorum (örn. 12)
- Stringe 24 saat yazıp 24 saatten tıklama saatini çıkarıyorum ve veritabanına kaydediyorum (en saçma kısmı)
- Ve sorgu ise şu: sonuç <= 0 tekrar alabilsin else echo 'Daha süre bitmedi';

Not: link olarak yazdığınız countdown site kapalıykende süreyi düşürebiliyor mu ?


tıklama tarihini db den çek (tıklama tarihi sutün türü datetime olmalı)
SELECT tıklama_tarihi FROM senintablon WHERE id = '1'

if ($tıklama_tarihi <= date('Y-m-d H:i:s', strtotime('-1 day'))) {
//Tıklama tarihi 1 güne eşit ya da geçtiyse buton aktif
} else {
// tıklama için kalan zaman sayacı
}


Geri sayım sayacı için tarih db üzerinden geldiğinden sitenin açık ya da kapalı olmasının bir önemi yok. Kullanıcı sitede oturum açtığında kalan zamanı görecektir.

Örnek olarak, yukarıdaki js kütüphanesi ile hazırlanmış opencart kampanya sayacını görebilirsin.
IbrahimCY

kişi bu mesajı beğendi.

Openix.io | $9.90 PositiveSSL | $12.90 RapidSSL

vidotv vidotv www.webnopark.com Kullanıcı
  • Üyelik 19.07.2015
  • Yaş/Cinsiyet 32 / E
  • Meslek Öğrenci
  • Konum Denizli
  • Ad Soyad N** G**
  • Mesajlar 9
  • Beğeniler 0 / 1
  • Ticaret 0, (%0)

IbrahimCY adlı üyeden alıntı

Çok teşekkür ederim aradığım sistem buydu fakat mantığı bir türlü kuramadım.
Not: Peki butona bugün tıklayanın bugün içerisinde bir daha tıklayamamasını nasıl sağlayabilirim ? (Yani günde 1 kez tıklayabilecekler butona)


Rica ederim.
Butona tıklayan kişiyi de tarihle birlikte kayıt edeceğin için kontrol edeceksin. kullanıcı girişi yapan kişinin id sini tabloda aratacaksın eğer kullanıcı mevcutsa tarih ve saati kontrol edeceksin. if şartı ile eğer 24 saat dolmuş ise butonu göstereceksin dolmamış ise butona "disabled" ekleyebilirsin veya tamamen butonu gizleyebilirsin.

Ağaşıdaki kodlardan örnek alabilirsin acele ile yazdım daha iyi yazılabilir. Kendine göre geliştirebilirsin. Mantığını anlaman önemli zaten (:



$_SESSION['kulid']="245";
$tablodan_kul_id="245";
$tablodan_gelen_tarih="20-08-2017";
$tablodan_gelen_saat="14:00:00";

$simdiki_tarih="21-08-2017";
$simdiki_saat="14:00:00";

if($tablodan_kul_id==$_SESSION['kulid']){
$tahfarki=$simdiki_tarih - $tablodan_gelen_tarih;
$saatfarki=$simdiki_saat - $tablodan_gelen_saat;
if($tahfarki>=1 and $saatfarki>=0){
echo "24 saat doldu";
}else{
echo "24 saat dolmadı";
}
}else{
echo "böyle bir kullanıcı butona basmadı";
}


Kolay gelsin.
 

 

www.vidotv.com

analogfikir analogfikir Osmanlı İmparatorluğu Kullanıcı
  • Üyelik 20.12.2013
  • Yaş/Cinsiyet 34 / E
  • Meslek Yok
  • Konum Ankara
  • Ad Soyad A** G**
  • Mesajlar 888
  • Beğeniler 224 / 118
  • Ticaret 11, (%100)
Veritabanına log olarak kaydederek yapabilirsin. Son tıkladığı süreyi kaydet eğer süre şuan ile arasındaki fark 24 saat olunca yeniden tıklama hakkı ver.
Farkı jquery ile ekrana yazdır.
 

 

wmaraci
Mersin evden eve nakliyat
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al