в базу все оки ложит (( Немогу найти где запрос происходит в этом elastix так путь https://x.x.x.x/admin/reports.php но в файле репортс нет запроса к базе ((((
avolon (Nov 21 '11)editВопрос такой! В PBX есть отчет о звонках так вот если прилитает callname в русской кодировке в баз узаносится намана но в отчетах ??????? знаки и при експорте в pdf тоже ?????? знаки вместо русского
вот прописал в
cat cdr_mysql.conf
charset=cp1251
в таблицу clid заносятся все по русски Конвертер pdf в elastix стоит fpdf так он и не хочит конвертить ((( . В отчете по веб тоже все ???? Может кто поможет???
Выход стандартный - найти где в коде статистики происходит подключение к БД и после подключения выполнить запрос "SET NAMES cp1251". Подробнее о кодировке подключения к MySQL: http://dev.mysql.com/doc/refman/5.5/en/charset-connection.html
в базу все оки ложит (( Немогу найти где запрос происходит в этом elastix так путь https://x.x.x.x/admin/reports.php но в файле репортс нет запроса к базе ((((
avolon (Nov 21 '11)edithttps://x.x.x.x/admin/reports.php
это только обертка
смотрите файлы в каталоге
/var/www/html/admin/cdr/
в 2.8-2.9 это делается вот тут
/var/www/html/admin/cdr/lib/defines.php
в функции DbConnect в конце.
Готов помочь разобраться. Установил себе 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 (Nov 23 '11)editЗадан: Nov 21 '11
Просмотрен: 1,387 раз
Обновлен: Jun 12 '13
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
avalon, а русский просто не родной, или ты в школе просто уроки прогуливал?
litnimax (Nov 23 '11)edit