Prima di tutto grazie artorius per l'intervento.

1) Si, lo so che torna un valore più vicino al tipo di dato, se INT sarà 0 se letterale sarà stringa vuota ""....

"Poi non ho capito: hai provato a fare UPDATE TuaTabella SET data = NULL WHERE id = $id ?"

2) Si la query è giusta (non sto a tediarti postando 150 righe di codice....) ma prima della query assegno a delle variabili i valori degli $_POST, il ciclo if else serve a valorizzare $data con una modifica in caso di correzione della data, ma se invece io la cancello completamente (quindi $_POST non è più settato. giusto??)mi attendoche il dato sia tornato nel DB con la voce NULL e non con i campi DATE settati a 0000-00-00.
Forse la domanda la espongo malissimo e mi scuso per questo, ma il succo è il seguente :
nella query dopo il ciclo if else : $data=$_POST[iscrizione]; // modifica o eliminazione dei numeri dai campi
se modifica : $data sarà una nuova data (es: 02-06-2008).
se cancello tutti i numeri : $data=NULL; quindi nel DB ci sarà NULL
ed i campi del form tornano di un bianco candido.

Se non è possibile modificherò i campi DATE.