首先html的编码格式是utf-8,
然后php通过adodb连接后也要设置utf-8的连接方式,
然后查询的时候也要以utf-8的方式查询,
这样就不会造成输出中文乱码的问题了。
代码更改如下
adodb连接数据库
$this->_db = NewADOConnection("mysqli");
$this->_db->connect($this->_dbAddr, $this->_dbUser, $this->_dbPwd, $this->_dbName);
$this->_db->Query("Set names utf-8"); //设置utf-8连接方式
$this->_db->SetFetchMode(ADODB_FETCH_ASSOC);
查询也要设置utf-8的查询方式
function execForArray($sql){
$this->_db->Execute("SET NAMES 'utf8'"); //设置utf-8的查询方式
$result = $this->_db->Execute($sql);
if($result){
$returnArray = array();
while(!$result->EOF){
$returnArray[] = $result->fields;
$result->MoveNext();
}
return $returnArray;
}else{
return false;
}
}