v2.5.2
Giriş yap

Php Zaman ayarlı işlem kodu arıyorum

faridaliyev
706 defa görüntülendi

Selam Arkadaşlar. Ben bir site yapmak istiyorum. Her şey tamam da, sadece zaman ayarlaması eksik.
Mesela, bir işlem 20 dakikada bir yapılabilir. bir kere yaptım. Bir de 20 dakika sonra yapa bilirim. Öyle bir php kodu istiyorum.
Yardımcı olursanız çok sevinirim.

metehankuscu
1024 gün önce

Merhaba
Bir tablon olur 1-N (bire çok) ilişkili kullanıcı bir butona birden fazla basabilicek şekilde ayarlamasını yaparsın.
Kullanıcı her butona bastıgında o tabloya ekletirsin;
Örnek Tablo Satırları;

id int
userID int
date date

Bu şekilde tablonu yaparsın ondan sonra butona her bastıgında o tarihle bir satır ekleme işlemi yaparsın.
PHP'de anlık tarihi alma fonksiyonu;

    $now = date("d-m-Y H:i");

Ekleme işlemini yaptıktan sonra, kullanıcıı her butona bastığı zaman gidersin tablona userID'si o olan kullanıcının en büyük id'sini getirirsin. Yani en son reklama tıkladığı zaman ki verileri.
Ondan sonra o satırdaki tarih ile tekrar bastığındaki zamanları birbirininden çıkartırsın. Fark >=20 ' ise tabloya tekrar ekleme yaparsın.
Eğer diyelim ki dakika fark >=20 tabloya ekleme yapıldı uyarı verirsin başarılı bir şekilde diye.
Eğer dakika fark < 20 ' ise ekletmezsin ona göre uyarını verisin.

PHP'de iki tarih arasındaki farkı bulma örneği;


// Zamanı Türkiye'ye göre ayarladık.
date_default_timezone_set('Europe/Istanbul');

$baslangicTarihi = strtotime("25-05-2020 10:50:12"); 
//baslangicTarihi => o zamana kadar geçen saniyesini buluyoruz.

$bitisTarihi = strtotime("29-05-2021 12:30:25");
//bitisTarihi => o zamana kadar geçen saniyesini buluyoruz.

$fark = $bitisTarihi - $baslangicTarihi;
//Aradaki saniye farkını bulduk.

$dakika = $fark / 60;
$saniye_farki = floor($fark - (floor($dakika) * 60));

$saat = $dakika / 60;
$dakika_farki = floor($dakika - (floor($saat) * 60));
 
$gun = $saat / 24;
$saat_farki = floor($saat - (floor($gun) * 24));
 
$yil = floor($gun/365);
$gun_farki = floor($gun - (floor($yil) * 365));
 
echo $yil . ' yıl ';
echo $gun_farki . ' gün ';
echo $saat_farki . ' saat ';
echo $dakika_farki . ' dakika ';
echo $saniye_farki . ' saniye ';
//Çıktı: 1 yıl 4 gün 1 saat 40 dakika 13 saniye

Kolay gelsin.