benim bildiğim kadarıyla böyle bir tarih kontrolünü IF ile yapamazsın. IF ve > , < operatorleri ile rakamsal olarak sadece integer/double biçimleri için küçüklük-büyüklük kontrolü yapabilirsin.

gün ay ve yılı tek tek kontrol ettirmen gerekebilir..

$gun = date("d");
$ay = date("m");
$yil = date("Y");

$tarih = explode('-', $tarih) //25-09-2009

if ($tarih[0] > $gun && $tarih[1] > $ay && $tarih[2] > $yil) {
listele..
}
tabi sen bunu böyle yazdığıma bakma. belki soruna cevap olur, çalışır. ama senin istediğin tarih kontrolleri MySQL sorgusu içinde yapılıyor.

MySQL'in date() fonksiyonuyla 'tarih' alanını kontrol ettirip ona göre sorguna devam edebilirsin.

denemedim sadece anlaman için örnekliyorum ;

$sorgu = mysql_query("SELECT * FROM odemeler WHERE date() >= odemeler.tarih");

if (mysql_num_rows($sorgu) > 0) {
echo "kayitlar listeleniyor";
}