Beh..... sostanzialmente dovresti fare in modo che tutti i caratteri passati siano adatti ad essere inseriti in un DB (per esempio evitare che siano inseriti apici e doppi apici), che caratteri tipo < > & @ # non vengano presi come buoni (potrebbero significare un tentativo di hacking), ma anche che siano resi "innocui" i caratteri accentati che danno sempre problemi di compatibilità con i charset.
Se dai un'occhiata alla Guida sicurezza di PHP che trovi in questo sito, capisci subito cosa intendo.

Puoi dare una bella ripulita alla stringa con poche righe di codice.
Te ne riporto un esempio al volo:

Codice PHP:
// recuperi un bell'array con tutti i caratteri speciali ed il 
// corrispettivo valore da sostituire
$caratteri get_html_translation_table(HTML_ENTITIESENT_QUOTES);
// sostituisco i caratteri della tabella in ogni stringa
$stringa_bonificata strtr($stringa_da_bonificare$caratteri);
// faccio l'escape finale prima di inserire i dati nel DB
$stringa_parsata = = mysql_escape_string($stringa_bonificata);
// ora si può effettuare l'inserimento nel DB 
Ti consiglio di andare a vedere i particolari di ogni funzione che non conosci, e che ho riportato nello script qui sopra, nel manuale di PHP.net.

Le variabili post stampate sono corrette.
OK, fosse anche solo per un formalismo, ricorda che per accedere ai valori contenuti in un array è sempre meglio utilizzare gli apici all'interno della parentsi quadra.

In ultimo: con il DIE formattato come ti è stato consigliato (e non solo da me), che tipo di errore ottieni????