Mysql utf8 symbole €

ka -  
avion-f16 Messages postés 20367 Statut Contributeur -
Bonjour,
J'ai un petit probleme avec l'encodage du caractere € dans ma base de donnée

Ma base de donné est en utf8_general_ci
Voila mon script php, mais ca me met un ? pour le caractere, si quelqu'un a une idée?

extract($_POST);

 $news_date= str_replace('.', '-', $news_date);
  if($news_date==""){$news_date=date("d-m-Y");}


mysql_query("UPDATE EVE_news SET  news_date='".utf8_decode(addslashes($news_date))."', news_url='".utf8_decode(addslashes($news_url))."',news_title_fr='". utf8_decode(addslashes($news_title_fr))."' WHERE id=".$_GET['id']."") OR DIE(mysql_error());

header("Location: index.php");

3 réponses

avion-f16 Messages postés 20367 Statut Contributeur 4 509
 
Ton fichier est-il bien encoder en UTF-8 ?
Précises-tu à l'aide de la balise meta l'encodage ?
Avec Firefox, quelle option est cochée quand tu vas dans "Affichage" -> "Encodage des caractères".
Les vérifications ci-dessus sont à faire sur la page où tu écris la news et sur la page qui affiche la news.
1
ka
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 


oui c'est dans ma db qu'il enregistre mal le caractere, ma page d'édition est bien en utf8
1
avion-f16 Messages postés 20367 Statut Contributeur 4 509
 
Je ne vois pas trop ce que tu peux faire de plus :
- Mets l'interclassement de chaque champ en "utf8_general_ci" ou "utf8_bin" (non sensible à la casse)
- Mets l'interclassement de ta table dans le même que celui de tes champ (onglet "Opérations" dans PhpMyAdmin)

Les données déjà présentes ne seront pas réencodée : supprimes ce qui existe déjà
1