Merhabalar,
Sorumuz : Veritabanına bigirlmiş bir kayıt var ve biz bu kayıtın tarih ve saat bilgisine “07-07-2010” ve “12:00” şeklinde sahibiz. Peki bu kayıtlardan şu anki zamandan 15 dakika önce oluşturulmuş (eskimiş olanı) olanı nasıl otomatik olarak sildirebiliriz?
Amaç : Önceki girilmiş bir zaman ile şimdiki zamanın karşılaştırılarak aradaki farka göre işlem yaptırma.
Kod:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 |
|
<?php
| //Cron Job
| // İşlem iki aşama
| // 1. Aşamda eski tarihli ve kullanılmayan anahtarları sil...
| // 2. Aşamada kalan verilerden saat farkı 15 dakika olanları ve kullanılmayan anahtarları sil...
|
|
| //require_once("conn.php"); DB Bağlantı şeysi...
|
| $sql = "select anahtar_no,anahtar_tarih, anahtar_saat,anahtar_dk,anahtar_uye from anahtarlar where anahtar_kullan = 0 order by anahtar_no asc";
| $query = mysql_query($sql);
|
|
| while($sonuc = mysql_fetch_assoc($query)){
| if($sonuc['anahtar_tarih'] < date("d-m-Y")){
| //Anahtarları otomatik olarak sil....
| $sql_sil = "delete from anahtarlar where anahtar_no = '".$sonuc['anahtar_no']."' and anahtar_kullan = 0";
| mysql_query($sql_sil);
|
| }
| else {
| $anahtar_saat = $sonuc['anahtar_saat'];
| $anahtar_saat = strtotime($anahtar_saat);
| $simdi = strtotime("now");
| $saat_fark = $simdi - $anahtar_saat;
| if($saat_fark > 900 ){
| //Anahtarları otomatik olarak sil....
| $sql_update = "update uyeler set uye_kontor = uye_kontor + '" .$sonuc['anahtar_dk']."' where uye_no = '".$sonuc['anahtar_uye']."'";
| $sql_sil = "delete from anahtarlar where anahtar_no = '".$sonuc['anahtar_no']."' and anahtar_kullan = 0";
|
| mysql_query($sql_update);
| mysql_query($sql_sil);
| }
|
| }
| }
| ?> |
|