簡體   English   中英

php文件字​​符編碼,mysql數據庫字符編碼,特殊字符

[英]php file character encoding, mysql database character encoding, special characters

我有一個帶有一些特殊字符的mysql數據庫,一個輸入表單,一些php頁面。

  • 在我的第一個php頁面(requestPage)中,我輸入了表單。

  • 該頁面(通過GET)將參數發送到另一個php頁面(ResultsPage)。

  • 最后,此php頁面(ResultsPage)將帶有參數的查詢發送到dbms並顯示結果。


RequestPage通過以下方式編碼為utf-8:

  • meta http-equiv =“ Content-Type” content =“ text / html; charset = utf-8

通過以下方式將ResultsPage編碼為utf-8:

  • meta http-equiv =“ Content-Type” content =“ text / html; charset = utf-8
  • header('Content-type:text / html; charset = utf-8');

數據庫及其表編碼為utf8_general_ci。


現在,例如:

  • 如果我以RequestPage的形式輸入單詞“ Cantu”,則resultPage將執行查詢,並向我顯示DB的每個條目,並帶有單詞“Cantù”,對我來說,它是可以的。
  • 如果我以RequestPage的形式輸入單詞“Cantù”,則resultPage將執行查詢,並且沒有顯示任何行,但我想查看帶有單詞“Cantù”的行!

有什么建議嗎?

我已經解決了這個問題,並在php resultsPage文件中添加了以下字符串:

mysql_query("SET character_set_results = 'utf8', character_set_client='utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'", $connection);

顯然,必須在此字符串后插入它:

$connection = mysql_connect($servername,$username,$dbpassword);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM