закинул сюда http://zalil.ru/upload/32118276 для его создания использовал http://fpdf.fruit-lab.de/ брал виндовый arial
Bracus ( 2011-11-23 17:30:02 +0400 )редактироватьВопрос такой! В PBX есть отчет о звонках так вот если прилитает callname в русской кодировке в баз узаносится намана но в отчетах ??????? знаки и при експорте в pdf тоже ?????? знаки вместо русского
вот прописал в
cat cdr_mysql.conf
charset=cp1251
в таблицу clid заносятся все по русски Конвертер pdf в elastix стоит fpdf так он и не хочит конвертить ((( . В отчете по веб тоже все ???? Может кто поможет???
Готов помочь разобраться. Установил себе Elastix и смог добиться выгрузки отчета в pdf русскими буквами. - Для начала необходимо установить русский шрифт для FPDF(тот который установлен по умолчанию не поддерживает русский). Если нужен шрифт могу скинуть. Для установки шрифта необходимо его скопировать в папку /var/www/html/libs/fpdf/fonts и установить владельца файла скорее всего у тебя будет asterisk (chown asterisk:asterisk filename) Далее необходимо указать что нужно использовать этот шрифт файл /var/www/html/libs/paloSantoGrid.class.php строка 142 $pdf->setFont("Verdana"); - по умолчанию и файл /var/www/html/libs/paloSantoPDF.class.php строка 148 $this->AddFont('verdana','','verdana.php'); - по умолчанию
установить подключение к MySQL в той кодировке в которой у тебя пишется в БД в файле /etc/my.cnf в секцию [mysqld] добавить
[mysqld]
character-set-server=cp1251
collation-server=cp1251_general_ci
init-connect="SET NAMES cp1251"
skip-character-set-client-handshake
В зависимости какая кодировка в БД cp1251 или utf8, поля в таблицах также должны быть в соответствующих кодировках cp1251generalci или utf8generalci для применения настроек перезагрузить mysql командой /etc/init.d/mysql restart
В php файлах формирования отчета установлена принудительная перекодировка в utf-8 для pdf отчета это файл /var/www/html/libs/paloSantoPDF.class.php строка № 320
...................
$this->MultiCell($w,5,utf8_decode(rtrim($data[$i])),0,$a);
..................
ее необходимо будет изменить либо убрав функцию utf8_decode либо изменив эту функцию на iconv("исходная кодировка", "кодировка для применения",rtrim($data[$i]))
закинул сюда http://zalil.ru/upload/32118276 для его создания использовал http://fpdf.fruit-lab.de/ брал виндовый arial
Bracus ( 2011-11-23 17:30:02 +0400 )редактироватьв 2.8-2.9 это делается вот тут
/var/www/html/admin/cdr/lib/defines.php
в функции DbConnect в конце.
Да смотрел я эту функцию (( но там нет конекта к mysql только к внутр базе или postgres (((
avolon ( 2011-11-23 08:05:28 +0400 )редактироватьelse{ $datasource = DB_TYPE.'://'.USER.':'.PASS.'@'.HOST.'/'.DBNAME;}
meral ( 2011-11-23 08:33:28 +0400 )редактироватьэту строчку тоже видили? она к чему относиться? к постгресу или к sqllite? ;)
meral ( 2011-11-23 08:34:20 +0400 )редактироватькороче. не стардайте фигней. можете потрейсить. это именно то что использутся данным модулем для конекта к mysql.
meral ( 2011-11-23 08:35:19 +0400 )редактироватьhttps://x.x.x.x/admin/reports.php
это только обертка
смотрите файлы в каталоге
/var/www/html/admin/cdr/
нет такого коталога (( я просто не пойму в базе все по русски так нет отображается ???? знаками ((((( блин
avolon ( 2011-11-22 07:19:13 +0400 )редактироватьопс, извиняюсь. каталог такой /var/www/html/admin/cdr/
meral ( 2011-11-22 16:20:26 +0400 )редактироватьЭт я перелапатил но не смог понять как он с базы берет (((( в какой кодировке
avolon ( 2011-11-22 19:18:27 +0400 )редактироватьну а зачем вам? поменяйте кодировку на какую хотите перед запросом.
meral ( 2011-11-22 19:31:49 +0400 )редактироватьХа знал бы где именно то поменял (( перелазил все так и не нашел где именно перед запросом то Да и в Master.csv точки вместо русского
avolon ( 2011-11-22 20:45:23 +0400 )редактироватьВыход стандартный - найти где в коде статистики происходит подключение к БД и после подключения выполнить запрос "SET NAMES cp1251". Подробнее о кодировке подключения к MySQL: http://dev.mysql.com/doc/refman/5.5/en/charset-connection.html
если в базу пишется правильно, то это не верный совет.
shakirov ( 2011-11-21 12:10:59 +0400 )редактироватьв базу все оки ложит (( Немогу найти где запрос происходит в этом elastix так путь https://x.x.x.x/admin/reports.php но в файле репортс нет запроса к базе ((((
avolon ( 2011-11-21 13:28:17 +0400 )редактироватьЗадан: 2011-11-21 11:42:43 +0400
Просмотрен: 1,376 раз
Обновлен: Jun 12 '13
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
avalon, а русский просто не родной, или ты в школе просто уроки прогуливал?
litnimax ( 2011-11-23 07:31:37 +0400 )редактировать