ah scusa... pensavo che l'errore fosse riferito alla prima query e mi ero fermato a leggere.
allora si, in effetti c'è un errore di sintassi nella query di UPDATE: se guardi bene, hai inserito un parametro di troppo alla funzione sprintf

In particolare, la riga:
Codice PHP:
GetSQLValueString($_POST['expires'], "date"), 
che non ti serve, perchè valorizzi prima il contenuto del campo expires nella query.
spero di essermi spiegato bene