Sí sí, notepad es suficiente para que la página esté en utf8 sin BOM, aunque yo uso Dreamweaver que ya me lo hace.
Lo del utf8_encode es una función que codifica un string para utf8. El problema está en que si ya está codificado, te lo fastidia. Encontré en interné una función que verifica si el String necesita conversión, la modifiqué un poco y es esta:
Código PHP:
function codificacionUTF8($str)
{
$cur_encoding = mb_detect_encoding($str) ;
if($cur_encoding == "UTF-8" && mb_check_encoding($str,"UTF-8"))
return $str;
else
return utf8_encode($str);
}
Entonces, cuando recoges las variables en la pagina PHP, las pasas por ahí;
Código PHP:
$opcionSeleccionada = codificacionUTF8($_GET['opcionSeleccionada']);
Prueba y si te sigue saliendo cosas raras es que es otra cosa :)