la collation/charset della tabella/campo/database qual'è?
e il charset della connesione?
considera che se ricevi dal browser roba in utf8, sia perché arriva tramite javascript sia perché la pagina che hai ha gli header che gli dicono di lavorare con utf8, ma la connessione è in latin1 ... i 2/3 byte dei caratteri arrivano come caratteri singoli (ergo 2/3 caratteri) e non come un carattere unico formato da 2/3 byte