in php date() forma una stringa a partire da una data in formato unix timestamp. Se utilizzi il formato ansi di mysql invece un campo in formato DATE (che non e' una funzione) sara' yyyy-mm-dd

Quindi se vuoi confrontare una stringa generata dalla funzione date() del php, questa dovra' essere nello stesso formato di quella memorizzata sul db... cioe':

$today = date('Y-m-d');

rimane poi da vedere cosa ricevi via GET.... e sopratutto ci vuole la condizione where nell'update altrimenti ti pialla con l'aggiornamento tutta la tabella.

Per ultimo ma non ultimo bisognerebbe conoscere lo stato dell'arte del tuo script dopo gli aggiustamenti correttivi.