Sütunu DATE yaptıktan sonra SQL sorgunuz şöyle birşey olmalı:
select * from uyeler where $cins $memleket onay='1' and str_to_date(`yas`, '%d-%m-%Y') BETWEEN '$ilkyasara' and '$sonyasara' ORDER BY id desc limit $a,$limit
Dediğinizi yaptım ama hiç bir sonuç çıkmadı..
Veritabanında dogum tarihlerini
YYYY-AA-GG olarak kayıt etmişim
Örneğin forumdan 20 ile 25 yaş arası aranmak istediginde bu degerler şöyle bir yoldan geçiyor
$yas1=mysql_real_escape_string(strip_tags(trim($_GET['yas1'])));
$yas2=mysql_real_escape_string(strip_tags(trim($_GET['yas2'])));
// Yaslar arasi arama yapmak icin yaslari dogum tarihine ceviriyoruz
$simdikizaman = explode("-", trtarih());
$ilkyas=$simdikizaman[0]-$yas1; // dogum YILINI bulduk
$sonyas=$simdikizaman[0]-$yas2; // dogum YILINI bulduk
$ilkyasara=$ilkyas."-".$simdikizaman[1]."-".$simdikizaman[2];
$sonyasara=$sonyas."-".$simdikizaman[1]."-".$simdikizaman[2];Bu yoldan geçtikten sonra
20 degerimiz 1994-10-23 oluyor
25 degerimiz 1989-10-23 oluyor
bende elde ettigim 1994-10-23 ve 1989-10-23 degerlerini şu şekilde aratıyorum
if($gelencinsiyet==""){ $cins=""; } else { $cins="cinsiyet='$gelencinsiyet' and"; }
if($gelensehir==""){ $memleket=""; } else { $memleket="sehir='$gelensehir' and"; }
$arama=mysql_query("select * from uyeler where $cins $memleket onay='1' and yas BETWEEN '$ilkyasara' and '$sonyasara' ORDER BY id desc limit $a,$limit");
while ($cek=mysql_fetch_array($arama)) {
echo ".....çekilenler.....";
}Az önce dediginiz kısmıda ekledim sırf tatmin olmak için ama sonuç başarısız..