herkese merhabalar. bir islemkayitlari isimli bir tablom var. bu tabloda ise islemkaydi_tarih isimli sütunum var. Bu sütun timestampCURRENT_TIMESTAMP ile 2018-08-01 03:38:59 bu şekilde tarihleri kaydettiriyorum.
şimdi bu alandan başlangıç ve bitiş tarihlerini girebileceğim bir tablo hazırlayarak bu verileri listeletmek ve en üstte ../../2018 - ../../2018 tarihleri arasında ........ şukadar veri bulundu diye yazdırmak istiyorum. Bu konuda bana yardımı olabilecek arkadaşlara şimdiden teşekkürler. Bu arada siteyi PDO ile yapıyorum. mysli kodlarda hata veriyor.
php iki tarih arası sorgulama yapma
5
●3.234
- 04-08-2018, 02:06:53ben mysqli kullaniyorum o yuzden mantik anlatayim. o tarihi isleme tarih katma sayi kat yani 20180402 yaptin bu ust tarih olsun 20180201 yap bu alt tarih if e koy bu arada kalan sayilarin tarihini saydir
- 04-08-2018, 02:44:17Üyeliği durdurulduBen aşağıda en basit şeklini veriyorum siz query kullanabilir yada prepare ile kullanarak daha güvenli hale getirebilirsiniz. Eğer excute kullanırsanız PDO'yu mysql gibi kullanmış olursunuz oda biraz düz mantıktır.
$query = $db->excute("SELECT * FROM islemkayitlari WHERE islemkaydi_tarihi > '$date1 00:00:01' AND islemkaydi_tarihi < '$date2 23:59:59"); $islem_adet = $query->rowCount() ; - 04-08-2018, 09:28:50Dendiği gibi zaten YYYYAAGG şeklinde convert ettiğinizde tarihler arası arama yapabilirsiniz ama şöyle bir yöntem söyleyeyim tarihleri veritabanına kayıt ederken unix olarak bir sütuna yazın sonarsında sorgulama sayfasında tarihleri unix e çevirip 2 sayı arasında kalanları kontrol edebilirsiniz.
- 04-08-2018, 15:26:40Kimlik doğrulama veya yönetimden onay bekliyor.hocam,
form da ilk_tarik ve son_tarih oldugunu varsayarsak sen
if(isset($_get[ilk_tarih])) $where=" AND tablo.ilk_tarih>='$_get[ilk_tarih]'";
if(isset($_get[son_tarih])) $where=" AND tablo.ilk_tarih<='$_get[son_tarih]'";
yap sonrada bunu
SELECT * FROM tablo WHERE 1=1 $where olarak kullan