Добрый день
При миграции TestLink-а с версии 1.8.6 на 1.9.2(на 1.9.1 тоже пробовали) в одном месте поехала кодировка, а именно при просмотре результатов прогона тестов, название группы тестов. В остальных местах все нормально. Не подскажите в чем может быть дело?
С уважением Юрий
TestLink.JPG 113,09К
41 Количество загрузок:
проблема при миграции testlink-а
Автор Shag_gy, 13 апр 2011 08:05
Сообщений в теме: 4
#1
Отправлено 13 апреля 2011 - 08:05
#2
Отправлено 03 мая 2011 - 16:18
Коллеги, нашлось ли решение? проблема с 1.9 присутствует!
спасибо
спасибо
#3
Отправлено 27 августа 2012 - 12:05
в execSetResults.php исправил
вместо
$str .= htmlentities($elem)
вывел просто $elem
вместо
$str .= htmlentities($elem)
вывел просто $elem
function smarty_assign_tsuite_info(&$smarty,&$request_hash, &$db,&$tree_mgr,$tcase_id,$tproject_id)
{
$fpath=$tree_mgr->get_full_path_verbose($tcase_id, array('output_format' => 'id_name'));
$tsuite_info = get_ts_name_details($db,$tcase_id);
foreach($fpath as $key => $value)
{
unset($value['name'][0]); // Remove test plan name
unset($value['node_id'][0]); // Remove test plan name
$str='';
foreach($value['name'] as $jdx => $elem)
{
$str .= "<a href=\"javascript:openTestSuiteWindow(" . $value['node_id'][$jdx] . ")\"> ";
// было $str .= htmlentities($elem) . '</a>';
// стало $str .= $elem . '</a>';
$str .= $elem . '</a>';
}
#4
Отправлено 27 августа 2012 - 14:57
Другая проблема - такие же крокозяблы появляются в представлении для печати требований (TL 1.9.2) в пункте Related Test Cases.
Как решил эту ситуацию.
в testlink-1.9.2/lib/functions/print.inc.php
колдовал со строкой
как раз $tc['name']) выводилось криво, крокозябликами (http://ru.wikipedia....wiki/Кракозябры)
Т.е., судя из WIKI:
Исходная кодировка UTF-8
При декодировании воспринято как Windows-1252
Сам текс вида:
Ð¨Ð¸Ñ€Ð¾ÐºÐ°Ñ ÑÐ»ÐµÐºÑ‚Ñ€Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ ÑŽÐ¶Ð½Ñ‹Ñ… губерний даÑÑ‚ мощный толчок подъёму ÑельÑкого хозÑйÑтва.
В php есть функция iconv (http://php.net/manua...ction.iconv.php)
Вывел все варианты таким циклом
ОКАЗАЛОСЬ, что читабельный вариант - это iconv("UTF-8","UTF-8",$tc['name'])
Проблема решилась, но в чем прикол? :)
Как решил эту ситуацию.
в testlink-1.9.2/lib/functions/print.inc.php
колдовал со строкой
$output .= htmlentities($tc['tc_external_id'] . $title_separator . $tc['name']) . "<br/>";
как раз $tc['name']) выводилось криво, крокозябликами (http://ru.wikipedia....wiki/Кракозябры)
Т.е., судя из WIKI:
Исходная кодировка UTF-8
При декодировании воспринято как Windows-1252
Сам текс вида:
Ð¨Ð¸Ñ€Ð¾ÐºÐ°Ñ ÑÐ»ÐµÐºÑ‚Ñ€Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ ÑŽÐ¶Ð½Ñ‹Ñ… губерний даÑÑ‚ мощный толчок подъёму ÑельÑкого хозÑйÑтва.
В php есть функция iconv (http://php.net/manua...ction.iconv.php)
Вывел все варианты таким циклом
<?php
$tab = array("UTF-8", "ASCII", "Windows-1252", "ISO-8859-15", "ISO-8859-1", "ISO-8859-6", "CP1256");
$chain = "";
foreach ($tab as $i)
{
foreach ($tab as $j)
{
$chain .= " $i -> $j - ".iconv($i, $j, "$my_string");
}
}
echo $chain;
?>
ОКАЗАЛОСЬ, что читабельный вариант - это iconv("UTF-8","UTF-8",$tc['name'])
Проблема решилась, но в чем прикол? :)
#5
Отправлено 31 октября 2012 - 10:15
Для исправления кодировки необходимо добавить в корень папки testlink файл ".htaccess" с содержимым AddDefaultCharset UTF-8. Сервер перезапускать не надо, применяется при каждом обращении к серверу.
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных