Показано с 1 по 10 из 62

Тема: Адмиистрации mma.su

  1. #29
    Аватар для Saku
    Регистрация
    22.09.2014
    Сообщений
    1,574
    Поблагодарил(а)
    5,655
    Поблагодарили 2,879 раз(а)
    Вес репутации
    41
    Admin'у ...
    Цитата Сообщение от Saku Посмотреть сообщение
    Работа не архи-сложная, готов помочь советом и делом.
    Случайно подумалось Есть более простое решение - не форум переводить в UTF-8, а наоборот получаемые заголовки переводить из UTF-8 в CP1251. Бегло посмотрел в инете, нашел несложный код:

    PHP код:
    <php

    function utf8_to_cp1251($s)
      {
      if ((
    mb_detect_encoding($s,'UTF-8,CP1251')) == "UTF-8")
        {
        for (
    $c=0;$c<strlen($s);$c++)
          {
          
    $i=ord($s[$c]);
          if (
    $i<=127$out.=$s[$c];
          if (
    $byte2)
            {
            
    $new_c2=($c1&3)*64+($i&63);
            
    $new_c1=($c1>>2)&5;
            
    $new_i=$new_c1*256+$new_c2;
            if (
    $new_i==1025)
              {
              
    $out_i=168;
              } else {
              if (
    $new_i==1105)
                {
                
    $out_i=184;
                } else {
                
    $out_i=$new_i-848;
                }
              }
            
    $out.=chr($out_i);
            
    $byte2=false;
            }
            if ((
    $i>>5)==6)
              {
              
    $c1=$i;
              
    $byte2=true;
              }
          }
        return 
    $out;
        }
      else
        {
        return 
    $s;
        }
      }

    ?> 
    Для его подключения нужна только поддержка библитотеки iconv в php, установленном на сервере. Использование функции - проще пареной репы: в том шаблоне (или библиотечном файле) движка форума, где обрабатывается тег URL - полученный заголовок линка просто прогнать через указанную выше функцию. Естественно, функцию нужно вписать в начало шаблона (или в библиотечный файл). Мне кажется это самое "дешевое" по усилиям решение.

    Если поддержки iconv нет, могу поискать (или попробовать самому написать) функцию-транслятор без указанной библиотеки.

    Естественно, если все же это нужно не мне одному ...
    Be positive!

    Самурай без меча подобен самураю с мечом, но только без меча, однако как-будто с мечом, которого у него нет, но и без него он как с ним

  2. 1 пользователь сказал cпасибо Saku за это полезное сообщение::


Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •