Debe verificar la codificación de caracteres. Básicamente, tiene una cadena codificada en un formato y la está superando en otro formato.
Para la materia internacional (y parece que está haciendo eso) entonces que haría uso de UTF-8: - En el archivo HTML poner en la cabeza (cerca de la parte superior) - En su PHP, asegúrese está manejando todas las cadenas como UTF-8 - Si también tiene una base de datos, asegúrese de que la base de datos, las tablas y los campos estén todos configurados como UTF-8 (advertencia: ¡realizar este cambio puede corromper exisar datos sin importar/exportar!) - Si está leyendo archivos de plantilla con caracteres especiales, asegúrese también de que sean UTF-8. (Si no hay caracteres especiales, entonces AscII normal lo hará)
Esa es la respuesta simple. Hay mucho que leer sobre la codificación de caracteres, solo Google.
(solución alternativa, el uso ASCII, pero convertir todo para los códigos de caracteres en la web amigable. Pero eso es más difícil de obtener todos los códigos de derecho, especialmente si el manejo de la entrada del usuario.)