Garbled UTF-8 characters in PHP

后端 未结 1 546
闹比i
闹比i 2021-01-29 00:08


        
1条回答
  •  鱼传尺愫
    2021-01-29 00:54

    This is happening because you didn't properly set the encoding to UTF-8 (or another one that contains all characters you want to display). To do this, you need to:

    • Set the encoding to UTF-8 in the database itself (you can skip this step if you can see the text properly in PhpMyAdmin).
    • Tell PHP that you're using UTF-8. To do this, run:

      mysql_query("SET NAMES utf8");
      

      right after you connect to the database (add this line to the end of your sql_connect.php file).


    Please note that you shouldn't use mysql_* functions anymore (see my comment on your question). If you switch to MySQLi, you can run this:

    $db->set_charset("utf-8");
    

    to change the charset.


    See also:

    • UTF-8 all the way through
    • How can I prevent SQL-injection in PHP?

    0 讨论(0)
提交回复
热议问题