Выборочная кракозябра

Discussion in 'Кодировки, ошибки отображения (крякозябры)' started by anbelaev, Jul 5, 2011.

  1. Offline

    anbelaev Недавно здесь

    Joined:
    Jul 5, 2011
    Messages:
    11
    Likes Received:
    0
    Gender:
    Male
    Добрый день!У меня на сайте вот такая фигня получается!сайт http://forum.kmv-portal.ru/
    Как видите вместо некоторых русских букв знаки вопроса!Как лечить?
     
  2.  
  3. ycsus
    Offline

    ycsus Недавно здесь => Cпециалист <=

    Joined:
    Feb 19, 2011
    Messages:
    249
    Likes Received:
    33
    Gender:
    Male
    Скорей всего для обрезки текста в модуле юзают substr(), а для кирилицы такое никак не катит, нужно заменить sustr() на mb_substr(), только не забудьте что там на один параметр больше нужно передать.
     
  4. Offline

    anbelaev Недавно здесь

    Joined:
    Jul 5, 2011
    Messages:
    11
    Likes Received:
    0
    Gender:
    Male
    а почему тогда в одном и томже модуле, в некотором нарамально отображается, а в некоторых нет!
    и вопрос где это прописать?
     
  5. Offline

    anbelaev Недавно здесь

    Joined:
    Jul 5, 2011
    Messages:
    11
    Likes Received:
    0
    Gender:
    Male
    не решена!
     
  6. ycsus
    Offline

    ycsus Недавно здесь => Cпециалист <=

    Joined:
    Feb 19, 2011
    Messages:
    249
    Likes Received:
    33
    Gender:
    Male
    Дело в том что по сути кирилица в утф8 состоит из 2х символов. Вышеприведенная функция обрезает по кол-ву символов. Иногда попадает как раз между одной буквой, что хреново воспринимается браузером. Прописать это нужно в модуле, найти где юзается substr() и прописать вместо неё mb_substr(), посмотреть как правильно её вызывать можно на пхп.су
     
  7. Offline

    anbelaev Недавно здесь

    Joined:
    Jul 5, 2011
    Messages:
    11
    Likes Received:
    0
    Gender:
    Male
    Код (html):
    1. $date = JHTML::_('date', $row->created, '%d-%m-%Y');
    2.         $intro  = mb_substr(strip_tags($row->introtext),0,$chars)."...";
    3.         $link = ContentHelperRoute::getArticleRoute($row->slug, $row->catslug, $row->sectionid);
    4.         $img_url = article_image($row);
    5.         $img_out = '';
    6.         if(isset($img_url) && $img_url != "") $img_out="<a href=\"".JRoute::_($link)."\"><img src=\"".$img_url."\" border=\"0\" height=\"".$imgheight."\" align=\"".$imgalign."\" title=\"".$row->title." \" width=\"".$imgwidth."\" alt=\"\"/></a>";
    7.         echo "<div class=\"yjnewsflash\">";
    8.         if($showimage == 1){
    9.             if($imgalign == 'left' || $imgalign == 'right' || $imgalign == 'top'){
    10.                 if($imgalign == 'top'){
    11.                     echo '<div class="nfimgpos">';


    где ошибка?
     
  8. Offline

    anbelaev Недавно здесь

    Joined:
    Jul 5, 2011
    Messages:
    11
    Likes Received:
    0
    Gender:
    Male
    это кусок кода из модуля
     
  9. ycsus
    Offline

    ycsus Недавно здесь => Cпециалист <=

    Joined:
    Feb 19, 2011
    Messages:
    249
    Likes Received:
    33
    Gender:
    Male
    нужно указать еще кодировку, я ж давал ссылку на функцию. У тебя:
    Код (PHP):
    1. $intro  = mb_substr(strip_tags($row->introtext),0,$chars)."...";

    Нужно:
    Код (PHP):
    1. $intro  = mb_substr(strip_tags($row->introtext),0,$chars,'UTF-8')."...";


    Кстати зачем у тебя на сайте указано 2 кодировки в метах? и утф и 1251
     
    anbelaev likes this.
  10. Offline

    anbelaev Недавно здесь

    Joined:
    Jul 5, 2011
    Messages:
    11
    Likes Received:
    0
    Gender:
    Male
    Действительнно, почему так!я даж не заметил"спасибо!
     
  11. rabamaster
    Offline

    rabamaster Недавно здесь

    Joined:
    Jul 8, 2011
    Messages:
    4
    Likes Received:
    0
    Gender:
    Male
    У меня такая же ерунда на сайте http://helpcentr.org.ua/
    Но, где заменить substr на mb_substr() не найду.
    Проблемы с модулем mod_latestnews и mod_mostread последняя буква виде ?
    В модулях нет команды substr. Где ее искать? Где заменить?
    Пробовал поиск по всему пакету Joomla - выдало около 300 файлов.

    Помогите плиз.
     
  12. rabamaster
    Offline

    rabamaster Недавно здесь

    Joined:
    Jul 8, 2011
    Messages:
    4
    Likes Received:
    0
    Gender:
    Male
    Щас в щаблоне посмотрю, неужели все так просто...
    отпишу, если это так - вот я дурак
     
  13. rabamaster
    Offline

    rabamaster Недавно здесь

    Joined:
    Jul 8, 2011
    Messages:
    4
    Likes Received:
    0
    Gender:
    Male
    Ребята, я любдю вас!!![!]
    Оказывается это все дело находится в файле шаблона Joomla там в папке html добавляются папки с названием модуля!! И в них файлы default.php содержат все что нужно ставлю плюсики за то, что натолкнули на мысль !!!!!!!!
     
  14. rabamaster
    Offline

    rabamaster Недавно здесь

    Joined:
    Jul 8, 2011
    Messages:
    4
    Likes Received:
    0
    Gender:
    Male
    Всем спасибо РЕШЕНО кракозябра в Joomla
     

Share This Page

Loading...