your date problem is easy
this will make you able to use date():
list($year, $month, $date) = explode("-", $date)
$timestamp = mktime(0,0,0,$month, $day, $year);
just pop $timestamp in as the second argument.
now unix time stamps are very useful.
since its one number you can easily compare dates.
i couldn't tell you how to sort the dates, but if your going to convert to times stamps, you could use time() to display only the shows that are past today, though i think there's more to it than that, using date() and the above code i.e.
//at the begining of your code
$today=date("j-n-y");
list($dnow, $mnow, $ynow) = explode("-", $today)
$today = mktime(0,0,0, $mnow, $dnow, $ynow);
if($timestamp >= $today)
{
//code used to show...
}
sorting it is beyond my abilities, i havn't worked with mysql before. and i don't intend to.