znalazłem rozwiązanie jeśli by ktoś potrzebował jeszcze... moduł jest bardzo fajny dlatego trochę się zawziąłem ale powiodło się
Oczywiście najpierw gdzie się da w plikach modułu zmieniamy kodowanie z 8859-1 na 8859-2, nie musimy natomiast ich konwertować w żaden sposób (?)
w pliku mod_smo_ajax_shoutbox.php jest użyta funkcja utf8_decode, która działa tylko w odniesieniu do iso-8859-1. W komentarzach pod opisem tej funkcji (http://pl.php.net/utf8_decode) jest prawie gotowe rozwiązanie, wystarczy zmienić nieco wyżej wymieniony plik modules/mod_smo_ajax_shoutbox.php
PRZED następującymi liniami:
Kod:
// Why doesn't htmlentities() figure this one out? who knows
function jal_special_chars ($s) {
Wstawimy poniższy kod - nową funkcję, ale UWAGA
UWAGA - musicie pousuwać spacje po znakach & i # - musiałem je dodać żeby forum nie wzięło tych ciągów jako encje i nie zamieniło ich na znaczki polskie
zatem wklejamy
Kod:
function utf82iso88592($tekscik) {
$tekscik = str_replace("\xC4\x85", '& # 261;', $tekscik);
$tekscik = str_replace("\xC4\x84", '& # 260;', $tekscik);
$tekscik = str_replace("\xC4\x87", '& # 263;', $tekscik);
$tekscik = str_replace("\xC4\x86", '& # 262;', $tekscik);
$tekscik = str_replace("\xC4\x99", '& # 281;', $tekscik);
$tekscik = str_replace("\xC4\x98", '& # 280;', $tekscik);
$tekscik = str_replace("\xC5\x82", '& # 322;', $tekscik);
$tekscik = str_replace("\xC5\x81", '& # 321;', $tekscik);
$tekscik = str_replace("\xC5\x84", '& # 324;', $tekscik);
$tekscik = str_replace("\xC5\x83", '& # 323;', $tekscik);
$tekscik = str_replace("\xC3\xB3", '& # 243;', $tekscik);
$tekscik = str_replace("\xC3\x93", '& # 211;', $tekscik);
$tekscik = str_replace("\xC5\x9B", '& # 347;', $tekscik);
$tekscik = str_replace("\xC5\x9A", '& # 346;', $tekscik);
$tekscik = str_replace("\xC5\xBC", '& # 380;', $tekscik);
$tekscik = str_replace("\xC5\xBB", '& # 379;', $tekscik);
$tekscik = str_replace("\xC5\xBA", '& # 378;', $tekscik);
$tekscik = str_replace("\xC5\xB9", '& # 377;', $tekscik);
return $tekscik;
} // utf82iso88592
pamiętacie o usunięciu spacji? no!
No a teraz jeszcze zamieniamy taką linię (kilka linijek niżej):
Kod:
$s = utf8_decode ( $s );
na taką:
Kod:
$s = utf82iso88592 ( $s );
wrzucamy plik na serwer, odświeżamy i sprawdzamy czy wpisane znaczki będą już się pojawiać. Poprzednie błędne wpisy trzeba będzie niestety skasować
na dowód że nie ściemniam - na stronie shadowrun-polska właśnie skończyłem instalację modułu (lewa kolumna, pod forum)
Pozdrówki