PHP проверяйте, если день в месяце

// function
cal_days_in_month(calendar,month,year);
//e.g.
$d=cal_days_in_month(CAL_GREGORIAN,10,2005);
echo "There was $d days in October 2005";
Dizzy Dunlin