I assume the data is already in the database just retrieve it and show that data
I am going to assume the data in the data base has a date set to it and it is in the standard date format YY-MM-DD.
So first retrieve the date and then explode it at the "-"
list( $datamonth, $dataday, $datayear) = explode ('-', $recordsdate)
Then make a date formated so that you can find the day of the year so you don't display old events
$newdate= mktime('0','0','0',$datamonth,$dataday,$datayear)
$datadoy = date('z', $newdate);
And then check the todays day of the year against that
$today = date('z');
if($today <= $datadoy){
//display the rest of the records data
}
If all that is in a while loop or foreach loop for the table that has the data it will display the all the records that are later in the year than today.
Of course if that is alot of records you may want to do a ORDER BY and a LIMIT in your SQL query.
As well the date('z') is a hard number like 245 and if you wish to move that number in either direction just add or subtract
$today = $today - 10;
Also the biggest hangups you will have is displaying records for next year. Particullarly as you get closer to the end of the year.
One trick is to just put the year number in front of the day of the year
$today = (date('Y') . date('z'));
$datadoy = ($datayear . date('z', $newdate));
This will make sure that next years date is always > any date from this year and will dispaly it.