Arkadaşım o kadar komplike yapmana gerek yok. Tarihleri veritabanına eklerken silinecek tarihi de eklersin datetime formatında veya timestamp olarak. Daha sonra hangi formatta eklediysen ona göre işlem yaptırırsın. Misal cron ayarlayıp
delete from itemler where bitistarihi <= zamanformatına göre o an ki zaman
veya sayfanda gösteriken select sorguna koşul eklersin. Sadece süresi bitmemişleri gösterirsin:
select * from itemler where bitistarihi > zamanformatına göre o an ki zaman
gibi. Hangisi senin için uygunsa
İyi ama bitistarihi sütununda ay - gün - yıl ve saati aynı anda yazamıyorum sorun orada zaten. Ya ay - gün - yıl olarak yada saat-dakika olarak kayıt ediliyor. Diğer türlü sürekli hata veriyor. Dakikayı yazdırmamam gerekiyor yani sadece saat kalmalı.
Bence günlük kontrol et veritabanına yazarken NOW() yap (date olacak sütun tipi) sonra çek veritabanından if( $cek["syt"] == date("Y-m-d")) { mysql_query("DELETE FROM sales WHERE $cek[id]");}
Günlük değil sitede yapılan her tıkta kontrol ediyor. Aynı sistemi satıştan kaldırılan itemlerin pazar ekranından kalkması içinde kullanıyorum. Bu sayede satıcı itemi satıştan kaldırırken yapmış olduğu tıklarla güncellemiş oluyor. Günlük kontrol yapılırsa script kullanılamaz.
Ve mysql_query kullanamam çünkü yukarıda yazdığım gibi item açık artırma sistemine bağlı o yüzden birden fazla query ve if bağlantısı var. İtemi satışa
koyarken
$ssaat = date("H");
$sbit = $ssaat+$zaman;
$sgun = date ("d");
$syil = date ("Y");
$say = date ("m");
if ($sbit >= 24) {
$sgun = $sgun+1;
$itemver = "INSERT INTO satislar SET owner_id = '" . $hesapid . "', fiyat = '" . $fiyatim."', saat = '" . $sbit."', gun = '" . $sgun."', ay = '" . $say."', yil = '" . $syil."',şeklinde kayıt ettiriyorum.
Cevaplar için sağolun. Cevap yazarken lütfen örnekleyerek yazınız.