我試圖在我的網站內顯示非常特殊的字符(如),並將其存儲到我的數據庫中。 當我寫這些特殊字符時,它們會顯示一次,但是當我重新加載頁面並且服務器從數據庫獲取字符串時,它會顯示爲「??????? ???????? ??????「 我試圖做很多事情來解決這個問題,但他們都沒有工作。 這不是一個可視化的問題,因爲頭被設置正確:MySQL數據庫存儲問號而不是特殊字符
<meta charset="utf-8">
我曾嘗試做:
- 服務器的默認字符集設置爲UTF-8。
- 設置數據庫/表/列崩潰和字符集來utf8mb4_unicode_ci
- 更改連接字符串:
$db = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
$db->query("SET character_set_results=utf8mb4");
mb_language('uni');
mb_internal_encoding('UTF-8');
$db->query("SET NAMES utf8mb4");
$db->set_charset('utf8mb4');
但沒有這種事情的來龍去脈。 作爲補充,我想(只是用於調試)在數據庫中的文本字段來改變一個字符串,我得到了一個錯誤:
Warning: #1300 Invalid utf8 character string: 'F09D91'
Warning: #1366 Incorrect string value: '\xF0\x9D\x91\xBB\xF0\x9D...' for column 'text' at row 1
我試過真的每一個解決方案,我發現這裏和outsite,但沒有工作。 任何幫助,將不勝感激。
該文件的編碼本身呢? –
我應該檢查哪些文件? –
所有這些。如果您不知道如何檢查文件的編碼,請獲取代碼編輯器,然後查看「編碼」下的含義。 –