![](/img/trans.png)
[英]Which is the best character encoding for Japanese language for DB, php, and html display?
[英]display character encoding in php
我已經在PHP中從MySQL檢索數據並將其發布到客戶端:如果我使用select * from users LIMIT 8;
沒問題..但是當select * from users LIMIT 9;
時select * from users LIMIT 9;
最后檢索到的數據打破了頁面..當我在php中調試時,我也看到此數據看起來還不錯:
1 = "CN=User1,OU=ARGE,OU=Personel,OU=Kullanicilar,OU=CompanyName,DC=company,DC=intra 2 ="CN=User2,OU=ARGE,OU=Personel,OU=Kullanicilar,OU=CompanyName,DC=company,DC=intra 3 ="CN=User3,OU=ARGE,OU=Personel,OU=Kullanicilar,OU=CompanyName,DC=company,DC=intra 4 ="CN=User4,OU=ARGE,OU=Personel,OU=Kullanicilar,OU=CompanyName,DC=company,DC=intra 5 ="CN=Öney,OU=ARGE,OU=Personel,OU=Kullanicilar,OU=CompanyName,DC=company,DC=intra
但是沒有從php返回的數據。.很明顯,'Ö'字符引起了這種情況,但是我不明白為什么它看起來很真實,而我的字符編碼是:
我的頁面
這也是我頁面的頂部:
header('Content-Type: text/html; charset=ISO-8859-1');
當我在mypage.php的html中鍵入標題``完成4個任務''時,它看起來是:``完成4個任務''。 在stackoverflow中看起來不錯,我想要我的..現在在html或php或兩者中都找不到問題了嗎?
編輯:由於我在腳本變量中看到“Öney”字符,所以我認為在php頁面中存在問題。
我的連接設置:
$this->dbh = new PDO('mysql:host=localhost;dbname=webfilter;port=3306;connect_timeout=15', 'root', 'company');
$this->dbh->exec("set names utf8");
您要在meta中將字符集指定為UTF-8 :
<meta charset="utf-8"/>
但是您要在PHP中指定ISO-8859-1 :
header('Content-Type: text/html; charset=ISO-8859-1');
您將需要保持一致性,更改PHP標頭函數以將字符集也設置為UTF-8:
header('Content-Type: text/html; charset=utf-8');
其他可能有幫助的步驟:
將文件編碼設置為UTF-8。
將表列設置為UTF-8(通常使用utf8-general)。
連接到數據庫后,運行查詢SET NAMES utf8
。
更改
header('Content-Type: text/html; charset=ISO-8859-1');
至
header('Content-Type: text/html; charset=utf-8');
在HTML中, charset
為utf-8
,但在PHP中則不同。 確保它們相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.