我目前運行的蜜罐趕論壇垃圾郵件發送者,我一直與我的數據庫存儲非拉丁字符的問題,我對數據庫和表級別utf8_unicode_ci集我用mysql_query(「SET NAMES'utf8'」)確保信息以utf8發送。問題存儲在MySQL數據庫中的非拉丁字符
諸如時間之類的信息存儲爲int。 IP,用戶名等存儲爲Varchar和文本,與垃圾郵件數據的唯一區別是我在插入數據之前使用了base64_encode(htmlspecialchars()),並且垃圾郵件列存儲在中等blob中,並使用COMPRESS( )在該列的查詢中。
隨着拉丁字符它返回正確的數據,但非拉丁字符,如俄羅斯和泰國也不會返回正確的數據。
例如:
Уровня конечного начальники или не
會返回:
Ð£Ñ€Ð¾Ð²Ð½Ñ ÐºÐ¾Ð½ÐµÑ‡Ð½Ð¾Ð³Ð¾ начальнÐ
或只是鑽石,在它們的問號。
幾年前,當我創建了一個論壇時,我設法正確地存儲了這些信息,但我不記得我是如何設法正確存儲的,我一整天都在搜索,一直沒能找到一個可以工作的解決方案爲了我。
編輯:如果它的任何幫助 額外的信息。
- 的Apache/2.2.14(Ubuntu的)
- MySQL客戶端版本:5.1.41
- PHP擴展:PHP5-MySQL的
你在你的網頁上有什麼樣的編碼?它是UTF-8嗎? –
utf8在元標記中設置,並通過標題(「Content-Type:text/html; charset = utf-8」)設置; – Connorw600
你能發表你的CREATE語句嗎? –