Php İle Zaman İşlemleri
-
herkese merhabalar,
date('d.m.Y - H:i:s'); ile tarih ve zamanı alıp veri tabanıma kaydediyorum şimdi benim isteğim ise kaydettiğim veri bu zamanın üstünden 2 saat geçmişse veriyi düzeltemesin bunu nasıl yapabilirim yardımcı olabilirmisiniz.
şimdiden çok teşekkür ederim
-
Hocam yanlış değil ama kendini kısıtlıyorsun. Gerek yok. İlerde ekstra ekstra fonksiyonlar ile iş çözmek zorunda kalabilirsin.
Veri tabanına zaman işlemlerini time(); komutu ile kaydet. Bu sana o tarihin sayısal değerini döndürecek şöyleki 1375057892 gibi. Bunu bu şekilde veri tabanına kaydedersen daha sonra zaman aralıklarının seçiminde rahat edersin.
Db`den gelen veriyi echo('d.m.Y H:i:s' , $dbdengelen) şeklindede ekrana basabiirsin.
time() değişkeni sana o andaki zamanı Timestamp şeklinde verir.
Timestamp bunu araştırırsan çok daha iyi olur. Projelerinde rahat edersin.
Edit : Konuna cevap ;
Veriyi eklerken benim dediğim şekilde eklersen şu şekilde devam edeceksin.
insert komutunda db ye eklerken time() şeklinde ekledin.
Daha sonra düzenleme kısmına geçtiğinde
$dbdengelentimedegeri - time(); (Eklendiği tarih - şuanki tarih) yaptığında sana bir sayı çıkacak diyelimki sen 2 saat istiyorsun.
60x60x2 = 7200 (2 saati temsil eder.
if($dbdengelentimedegeri - time() < 7200){
iki saat geçmemiş işlemi yap
} else {
işlemi yapma 2 saat geçmiş
}
-
<?php $bugun = date('Y-m-d H:i:s'); // 2017-02-18 18:38:02 // $tarih = '2017-02-18 18:38:30'; $tarih = date('Y-m-d H:i:s' , '1487432310'); // time() ile alınan zaman damgasını istediğin şekilde gösterimini yapabilirsin 2017-02-18 18:38:30 tarihinin time değeri if(strtotime($bugun)>strtotime($tarih)) echo 'bugün tarih değişkeninden büyük';
Örnek olarak bunlardan faydalanabilirsin.
-
ikinizede çok teşekkür ederim :)