sql >> Databáze >  >> RDS >> Mysql

Získávání podivných znaků při načítání hodnoty v databázi mysql

Všiml jsem si, že spouštíte tento dotaz... mysql_query('SET CHARACTER SET utf8');
Zkuste to změnit na toto...

mysql_query("SET NAMES 'utf8'");

To by mělo zajistit, že připojení je UTF-8.

Zkuste si také projít seznam položek v tomto článku... http:/ /blog.loftdigital.com/blog/php-utf-8-cheatsheet
Zde jsou uvedeny kroky, které jsou potřeba k tomu, abyste se ujistili, že na svém webu/aplikaci používáte UTF-8 zepředu dozadu, ale shrnuto:

  • Zkontrolujte, zda máte rozšíření mbstring PHP a zda máte mb_internal_encoding('UTF-8'); nastavit ve skriptu.
  • Ujistěte se, že po připojení k databázi spouštíte tento dotaz MySQL mysql_query("SET NAMES 'utf8'"); což zajišťuje, že připojení je UTF-8.
  • Nastavte záhlaví HTTP vašeho výstupu... header('Content-type: text/html; charset=UTF-8'); . Zdá se, že to není potřeba, pokud jste nastavili mb_internal_encoding() výše, ale užitečné pro ladění
  • Ujistěte se, že je výstupní kódování vaší stránky HTML nastaveno... <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />


  1. Včetně tabulek a schémat při výpisu sloupců identity v databázi SQL Server

  2. Žádné mapování dialektu pro typ JDBC:-9

  3. jak vyřešit Obecnou chybu:2014 Nelze provádět dotazy, dokud jsou aktivní ostatní dotazy bez vyrovnávací paměti. pomocí připojení PDO

  4. PostgreSQL parametrizované Order By / Limit v tabulkové funkci