php– 在UTF-8网站上无法正确显示的字符

php– 在UTF-8网站上无法正确显示的字符,第1张

概述我已经完成了我能想到的一切,但是在这个网页上没有正确显示特殊字符.例如,在数据库中它是:但在网站上它是:Nouveaux R�alistes 这是我检查过的一切......数据库设置为UTF-8:该页面是用NetBeans编写的,文档编码设置为UTF-8:页眉声明UTF-8:元字符集设置为UTF-8:我甚至在我的.htacess中添加了以下行:但是字符仍然没

我已经完成了我能想到的一切,但是在这个网页上没有正确显示特殊字符.

例如,在数据库中它是:

但在网站上它是:

Nouveaux R�aListes

这是我检查过的一切……

数据库设置为UTF-8:

该页面是用NetBeans编写的,文档编码设置为UTF-8:

页眉声明UTF-8:

元字符集设置为UTF-8:

我甚至在我的.htacess中添加了以下行:

但是字符仍然没有正确显示,我从W3C验证器得到以下错误:

我觉得我已经尝试了一切,但它仍然无法运作. (我甚至在PHP中尝试过HTMLspecialchars和HTMLentitIEs,但页面甚至没有呈现!)

UPDATE
根据要求,这是我正在使用的代码:

class Exhibition {    public $exhibitionDetails;        public function __construct(Database $db,$exhibitionID){        $this->_db = $db;        $params['ExhibitionID'] = $exhibitionID;        $STH = $this->_db->prepare("SELECT *             FROM Exhibition            INNER JOIN Schedule                ON Exhibition.ExhibitionID = Schedule.ExhibitionID                        WHERE Schedule.Visible = 1                AND Exhibition.ExhibitionID = :ExhibitionID;");        $STH->execute($params);        $this->exhibitionDetails = $STH->fetchAll(PDO::FETCH_ASSOC);    }}

和…

try {    $db = new Database(SITE_ROOT."/../");    $db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);    $exhibition = new Exhibition($db,$_GET['ID']);} catch (PDOException $e) {    echo "

最后……

最佳答案如果您使用的是MysqL_ *函数:

MysqL_query("SET nameS 'utf8'");

如果您使用的是PDO

$dsn = 'MysqL:host=localhost;dbname=testdb';$username = 'username';$password = 'password';$options = array(    PDO::MysqL_ATTR_INIT_COMMAND => 'SET nameS utf8',); $dbh = new PDO($dsn,$username,$password,$options);

它设置连接编码. 总结

以上是内存溢出为你收集整理的php – 在UTF-8网站上无法正确显示的字符全部内容,希望文章能够帮你解决php – 在UTF-8网站上无法正确显示的字符所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1168334.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)