Ipplan
Материал из ALT Linux Wiki
Версия от 07:32, 10 июня 2013; 78.37.73.252 (обсуждение)
Настройка ipplan на корректную работу с русской кодировкой
Решение проблемы с некорректным отображением русских символов при установке русского интерфейса:
- в файле config.php найти список кодировок $iso_codes = array (
- заменить 'ru_RU'=>'Russian', на 'ru_RU.UTF-8'=>'Russian',
Итоговый вариант:
$iso_codes = array ( 'en_EN'=>'English', 'bg_BG'=>'Bulgarian', 'fr_FR'=>'French', 'ja_JP'=>'Japanese', 'pt_BR'=>'Português - Brasileiro', 'ru_RU.UTF-8'=>'Russian', 'de_DE'=>'Deutsch', 'it_IT'=>'Italian', 'no_NO'=>'Norwegian - Auto Translation', 'pt_PT'=>'Portuguese - Auto Translation', 'es_ES'=>'Spanish - Auto Translation');
Решение проблемы с записью в mysql в неправильной кодировке:
- найти class.dbflib.php
- после команд соединения с базой PConnect(DBF_HOST, DBF_USER, DBF_PASSWORD, DBF_NAME)) и Connect(DBF_HOST, DBF_USER, DBF_PASSWORD, DBF_NAME) != false) добавить $this->ds->Execute('SET NAMES utf8');
Итоговый вариант:
// open a database connection function IPplanDbf() { // create a connection id $this->ds = &ADONewConnection(DBF_TYPE); $this->ds->debug = DBF_DEBUG; // some local locales only accept 24 hour date formats - MSSQL? if (DBF_TYPE=="mssql" or DBF_TYPE=="ado_mssql" or DBF_TYPE=="odbc_mssql") { $this->ds->fmtTimeStamp = "'Y-m-d H:i:s'"; } if (DBF_PERSISTENT) { // Fix issue with Reverse DNS imports that use nested database calls if (DBF_TYPE=="mysql" or DBF_TYPE=="maxsql" or DBF_TYPE=="postgres7") $this->ds->autoRollback = FALSE; if ($this->ds-> PConnect(DBF_HOST, DBF_USER, DBF_PASSWORD, DBF_NAME)) { $this->ds->SetFetchMode(ADODB_FETCH_ASSOC); $this->ds->Execute('SET NAMES utf8'); return $this->ds; } } else { if ($this->ds-> Connect(DBF_HOST, DBF_USER, DBF_PASSWORD, DBF_NAME) != false) { $this->ds->SetFetchMode(ADODB_FETCH_ASSOC); $this->ds->Execute('SET NAMES utf8'); return $this->ds; } } // kill connection info if error - probably bogus database name unset($this->ds); return false; }