Secondo me dovresti correggere le seguenti cose nei tuoi script:

1 - usi le variabili globali anzichè $_POST['nome_var'], e questo ti causerà problemi di funzionamento su qualunque macchina con php > 4.2.0 (mi sembra strano che su altervista funzioni)

2 - fai le query ma non hai messo nessuna segnalazione di errore, io ti consiglio di farle così
Codice PHP:
mysql_query($query) or die('La query "'.$query.'" ha restituito il seguente errore: '.mysql_error()); 
anche se questo mostra la query è non sempre può essere desiderabile, quindi se la query può contenere dati che non vuoi che nessun motivo siano visti evita di stamparla a video, se non in fase di sviluppo.

Per quanto riguarda il tuo errore al 99% potresti risolvere chiamando la funzione mysql_escape_string sui dati prima di inserirli, infatti è proprio l'apice che ti causa un errore di sintassi mysql.

Ciao.