hola a todos de nuevo he descubierto una forma mucho mejor que la que tenia y queria compartirlo.
he añadido este codigo en mi archivo de conexion.php
Código PHP:
mysql_query ("SET NAMES 'utf8'");
despues de la conexiona la base de datos, quedando asi:
Código PHP:
$dbhost="localhost";
$dbusuario="root";
$dbpassword=""
$db="mi_base";
$conexion=mysql_connect($dbhost, $dbusuario, $dbpassword) or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db($db, $conexion)or die ('Error al seleccionar la Base de Datos: '.mysql_error());
mysql_query ("SET NAMES 'utf8'");
de esta forma no hace falta estar poniendo ni htmlentities, utf8_encode ni utf8_decode
Un saludo.