[J1.0] Текущий адрес страницы, почемуто каждый раз по разному?

Статус
В этой теме нельзя размещать новые ответы.

new_forward

Профессор
Регистрация
5 Май 2008
Сообщения
673
Реакции
44
Решил сделать кнопку перепоста в жж для новостей (Joomla 1.0:(
Код:
<? global $mosConfig_live_site; 
	$title_cont = iconv("windows-1251", "UTF-8", $row->title); 
	$link_cont = iconv("windows-1251", "UTF-8", $mosConfig_live_site.$_SERVER['REDIRECT_URL']); 
	?>
<noindex><a rel="nofollow" href="http://www.livejournal.com/update.bml?event=<? echo $link_cont; ?>&subject=<? echo $title_cont;?>" target="_blank" title="Опубликовать в своем блоге livejournal.com"><img src="/images/livejournal.gif" alt="Опубликовать в своем блоге livejournal.com" width="73" height="18" border="none"></a></noindex>
Отправлять в жж нужно в UTF8 я сделал через iconv перекодировку, а в результате получается что отправляет он нормально, но вот иногда получается что данные отправляются в windows-1251 я так понимаю потому как в жж приходят иероглифы....:nezn:
 
Посмотрите в исходном коде сгенерированной странице как выглядит ссылка, есть ли там что-то вроде %D0%BC%D1%......? Не факт что дело именно в кодировке.
Еще можно попробовать заменить iconv на эту функцию Win2Utf:
PHP:
function Utf2Win($s){ return Utf8($s,'w') ; }  
function Win2Utf($s){ return Utf8($s,'u') ; }  
function Utf8($s, $sTo = 'utf2win'){  
    $a = array();  
  for ($i=128; $i <= 191; $i++){  
    $a['utf'][] = ($i<144) ? chr(209).chr($i) : chr(208).chr($i);  
    $a['win'][] = ($i<144) ? chr($i + 112) : chr($i + 48) ;  
  }  
  $a['utf'][] = chr(208) . chr(129);  
  $a['win'][] = chr(168);  
  $a['utf'][] = chr(209) . chr(145);  
  $a['win'][] = chr(184);  
    if(in_array(strtolower($sTo), array('utf2win','w','cp1251','windows-1251')))  
        return str_replace($a['utf'], $a['win'], $s);  
    if(in_array(strtolower($sTo), array('win2utf','u','utf8','utf-8')))  
        return str_replace($a['win'], $a['utf'], $s);  
}
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху