Перейти к контенту
  • 0

Кодировка при добавлении нового поля.


MANIX

Вопрос

Я добавил новые поля. 1. Обыное текстовое, 2. Селект.

При выборе нормально отобраежтся русский язык а вот при просмотрет в Топике кодировка именно новых полей летит... ЧТо делать?

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0
при просмотре профиля смотрится нормально, попробуй убрать их при просмотре топиков, убери вывод в настройке поля.... я, по крайней мере, так решил эту проблему....
Ссылка на комментарий
Поделиться на других сайтах

  • 0
У меня та же проблема! Но что делать, если надо чтобы это поле выводилось при просмотре топика?
Ссылка на комментарий
Поделиться на других сайтах

  • 0

mayak

зайти в админку, в скины и проверить есть ли где-то в скинах iso- кодировка. Если есть - заменить.

 

И еще раз - перед установкой форума пройтись по папке upload и по всех файлаз заменить iso кодировку на windows

Ссылка на комментарий
Поделиться на других сайтах

  • 0

хм.. вообщем тоже столкнулся с этой траблой

1. дело не в кодировке скинов - однозначно- нигде нет нерусской кодировки

2. дело не в кодировке базы - в базе нормально хранится..

вообщем проблема пока совершенно непонятна - появляется при парсинге данных из базы.. но почему кодировка начинает козлить :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Угу. У меня та же проблема. Вместо русской кракозяблики, если отображени кастом полей включить.
Ссылка на комментарий
Поделиться на других сайтах

  • 0

гы нашел траблу..

вообщем берем файлик sources\classes\class_custom_fields.php

там в районе 483 строки функция

 function method_format_field_for_topic_view( $i )

в ней строчка чуть ниже

   $out = htmlentities( $this->out_fields[$i]);

ее меняем либо на

   $out = $this->out_fields[$i];

если у вас нет кривых символов в полях

или на

   $out = htmlentities( $this->out_fields[$i],ENT_NOQUOTES, 'KOI8-R' );

вместо koi8-r ставить свою кодировку

вот выдеражка про htmlentities

htmlentities

(PHP 3, PHP 4)

 

htmlentities - конвертирует символы в мнемоники HTML.

 

Описание

string htmlentities (string string [, int quote_style [, string charset]])

 

Эта функция идентична htmlspecialchars(), но все символы, имеющие эквиваленты - мнемоники HTML, транслируются в эти мнемоники. Как и htmlspecialchars(), она принимает необязательный второй аргумент, указывающий, что должно выполняться с одинарными и двойными кавычками. ENT_COMPAT (по умолчанию) будет конвертировать только двойные кавычки и оставит одинарные без изменения. ENT_QUOTES будет конвертировать как двойные, так и одинарные кавычки, а ENT_NOQUOTES оставит и двойные, и одинарные кавычки без конвертации.

 

В настоящее время по умолчанию используется набор символов ISO-8859-1. Поддержка второго аргумента была введена в PHP 3.0.17 и в PHP 4.0.3.

 

Как и htmlspecialchars(), она принимает необязательный третий аргумент, который определяет набор символов, используемый при конвертации. Поддержка этого аргумента была введена в PHP 4.1.0.

 

подробнее про функцию для знающих инглишь тут http://ru.php.net/manual/en/function.htmlentities.php

Ссылка на комментарий
Поделиться на других сайтах

  • 0

winnie, что бы мы без тебя делали? :D

Помоги еще с такой бедой. Там при создании нового поля предлогается всего три типа полей: Обычное текстовое, текст ариа и селект.

А мн нежун чекбокс. Это каким образом можно сделать?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

winnie

Ух ты... Чтобы мы без тебя делали? То что надо!! Всё отлично работает... Будешь в Беларуси - поставлю пиво! :D

 

(сорри за оффтоп, но я так намучался с этой штукой)

Ссылка на комментарий
Поделиться на других сайтах

  • 0

в принципе сейчас посмотрел можно сделать и чекбоксы на основе типа селект

сейчас просто некогда заниматься этим.. но вроде ничего трудного :D

в качестве направления мыслей

1. добавить в админке новый тип например check

2. в файле sources\classes\class_custom_fields.php в функции function method_parse_out_fields($type='view')

добавить обработку типа check наподобие типа drop только хтмл код соответсвующий сделать

 

зы это не баг..

баг только для кодировок отличных от инглиша.. им на это наплевать вообще

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Тихий голос за кадром: Баг-репорт шли

а IPB не поддерживает кодировки кирилические... Только обещают. :) Это только наш ресурс и пользователей касается

 

зы это не баг..

баг только для кодировок отличных от инглиша.. им на это наплевать вообще

:D

 

winnie -> ;):)

Ссылка на комментарий
Поделиться на других сайтах

  • 0

зы почти офф кстати дабы избежать других багов с кодировкой рекомендую пройтись поиском по всем файлам и поискать где используется функция htmlentities - я нашел всего 6 файлов..

вообщем то там тоже лучше прописать кодировку

 

как вариант исправления бага разработчиками- прописывать кодировку в админ панели как глобальную переменную и везде ее вставлять, тогда бы исчезли вопросы с кодировкой которые возникают на форуме каждые полдня :D.. в иконборде например так сделано, но это просто пожелания и офф.. сори за него кстати

Ссылка на комментарий
Поделиться на других сайтах

  • 0

sources\admin\ad_profilefields.php

есть функция function main_form($type='edit')

внутри нее в районе строки 389

	 $ibforums->html .= $ibforums->adskin->add_td_row( array( "<b>Field Type</b>" ,
                $ibforums->adskin->form_dropdown("pf_type",
                      array(
                         0 => array( 'text' , 'Text Input' ),
                         1 => array( 'drop' , 'Drop Down Box' ),
                         2 => array( 'area' , 'Text Area' ),
                        ),
                      $fields['pf_type'] )
             )      );

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Дык ты постил баг-репорт-то? Глядишь и присмотрятся .

ОФФ :D нет я такими вещами не занимаюсь:)

1. там надо по английски писать:) а я только читать умею ;)

2. зачем мне это - сам исправлю ;)

3. Может здешняя команда админов сделает это за меня..

4. хватит о баг репорте :) флуд для этой темы это

Добавлено в [mergetime]1091402111[/mergetime]

теперь где Html Шаблон на это ?

:) я так понимаю вам надо лекцию как все это делать.. ладно уговорили напишу сам- только опишите подробно что хотите и желательно не в этой теме а в форуме "Запрос на создание модификаций" дабы не путать других юзверей

Ссылка на комментарий
Поделиться на других сайтах

  • 0

:D честное слово лень:)..

я не претендую на авторство :) так что сами, пожалуйста, отпишитесь там ;)

ЗЫ как понял по ответу Мета - исправление этого глюка в их ближайшие планы не входит..

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Дык пинать надо авторов, а то так они ничего не увидят и ничего делать не будут ;). Иль не знаете как коммерческий софт делается :D.
Ссылка на комментарий
Поделиться на других сайтах

  • 0

IPB не поддерживает кодировки кирилические...

 

Ладно бы кириллические. Они и международный UTF-8 не поддерживают. Для ввода кторого там на 5..10 минут работы требуется всего :D (ухожу, ухожу... )

Ссылка на комментарий
Поделиться на других сайтах

  • 0
$out = htmlentities( $this->out_fields[$i]);

 

ее меняем либо на

 

$out = $this->out_fields[$i];

 

если у вас нет кривых символов в полях

 

Вот у меня сейчас PF3 и в ней все немного иначе - там уже изначально стоит без htmlentities. Я пробовала второй способ с явным указанием кодировки htmlentities, но он не помогает. Абсолютно то же самое выдает.

Быть может эта функция не поддерживается...

Можно ли исправить ошибку другим способом?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Во!

	function method_make_safe_for_view( $t )
{
  if ( $this->kill_html )
  {
  	$t = htmlentities( $t );
  	$t = preg_replace("/&#([0-9]+);/s", "\\1;", $t );
  }
  
  return $t;
}

 

 

Надо просто закомментить строку

 

  	//$t = htmlentities( $t );

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.