Avevo già postato questo problema nella sezione Ajax, convinto che l'errore dipendesse dall'interazione js-php, ma grazie a qualche aiuto e a qualche esperimento mi sono accorto che il problema era da un altra parte...ma anche se ora so che il problema sta nell'inserimento dei dati non riesco comunque a venirne a capo. Quindi scusate ma provo nuovamente a chiedere aiuto.

io ho un php che riceve i dati da un javascript, fino a qui i dati arrivano correttamente
"Dall’autrice"

ora con php faccio l'encoding e preparo la query per inviarli al DB
$testo=utf8_encode("Dall’autrice");
$query="INSERT INTO mio_db ( testo ) VALUES('".$testo."')";

a questo punto invio i dati al db, ma chiedo anche di stamparmi a video la query, giusto per confrontarla.
mysql_query($query, $db);
echo $query;

a video ottengo la stringa
"INSERT INTO mio_db ( testo ) VALUES('DallÂ’autrice')";" (giusta perchè facendogli utf8_decode riottengo la stringa originaria)
mentre invece su DB salva
"Dall’autrice" (sbagliata, perchè facendo utf8_decode ottengo "Dall’autrice")

se io invece prendo la query stampata a schermo (ctrl+c), vado in mysql e inserisco la stringa con sql (ctrl+v) salva la stringa correttamente.

la Collation di tutto il DB, le tabelle e i singoli campi di testo è utf8_general_ci ma non penso sia un problema della collaction del DB altrimenti il problema si presenterebbe anche inserendo l'sql manualmente, no?

Qualcuno saprebbe dirmi cos'è che sbaglio? non so più dove sbattere la testa->

Grazie per avermi letto.