j'ai un problème avec la fonction json_encode

je veux afficher correctement le résultat en JSON pour ne pas avoir ensuite des problèmes de caractères accentués

je mets donc le header en UTF-8

Code : Sélectionner tout - Visualiser dans une fenêtre à part
header('content-type: text/html; charset=UTF-8');
ensuite je mets MYSQL en UTF-8 avant de traiter ma requte
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
$dblink=connect_mysql();
mysql_set_charset('utf8',$dblink);
$requete = mysql_query("SELECT ...",$dblink);

et ensuite je veux afficher le résultat en JSON

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
while($row=mysql_fetch_assoc($sql)) 
{
 $output[]=$row;
}
 
$output[]=$row;
lorsque je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
print(json_encode($output));
je récupère alors des \u00e9 a la place des é ...

et lorsque je n'utilise pas json_encode
alors mon résultat est propre

je n'arrive pas à trouver, j'ai vu dans la doc que json_encode ne supporte que le UTF-8 mais justement j'ai tout fait pour cela ...

avez-vous une idée pour m'aider, je m'arrache les cheveux depuis trois jours

merci