arreglado el problema

El problema se debía a la codificación de los datos en la base de datos,
estaba en latin1, fijate que este siempre en utf8, ahora hice que
funcione con latin1, en el código esta explicado con comentarios.