PDA

Zobacz pełną wersję : buga znalazłem



palik
06-04-2006, 22:09
tak przynajmniej mi się wydaje

otóż zainstalowałem na localhost joomla 1.0.8 w wersji utf i iso z tutejszej plikowni, a następnie forum smf 1.1RC2 i integrację do obu joomli (wszystko na jednej bazie z różnymi prefiksami)

i teraz - w wersji iso mogę się zalogować, w wersji utf8 nie. Jutro zabiorę się za szukanie tej igły która sprawia że wersja utf8 nie działa poprawnie...

pozdrówki

frico
06-04-2006, 22:57
Na Twoim miejscu napisał bym nawet "buga stworzyłem" :D
(W wyniku prac nad utefizacją)

Strzelałbym w kierunku przekłamania w przekazywaniu przez łacznik loginu i hasła.

Pozdrawiam
frico

palik
06-04-2006, 23:03
heh no nie jestem pewien czy stworzyłem... zainstalowałem sobie to wszystko na czysto na localhost, bez żadnych danych z poprzednich baz, konwersji, upgradeów... wszystko na najzwyklejszych ustawieniach - joomle obie i bridge stąd, smf ze strony smf...

Co zaobserwowałem - na joomli utf rejestracja przebiega poprawnie tylko dla jednej strony mostu - czyli jeśli jest rejestracja przez mambo - użytkownik tworzy się tylko w mambo, jeśli jest smf - tylko w smf... co najśmieszniejsze użytkownik admin standardowy z joomli i smf mający takie samo hasło również nie może się zalogować...

zaczynam wymiękać - programem WinMerge zrobiłem skan i plików rózniących się w obu dystrybucjach jest jak na lekarstwo, raptem pliki językowe, coś w tinymce i w templatce... myślałem że może ktoś składając utfową wersję joomli coś przestawił, zmienił... a tu nic...

No nic prześpię się z tym i jutro postaram się prześledzić co łatanie pliku z komponentu integracyjnego tak naprawdę zmienia - które pliki ... ok do usłyszenia :)

EDIT

oczywiście jak to ja, nie przespałem się tylko siedziałem do teraz :D

winna była oczywiście różnica w kodowaniu w polach smf.membername i jos.name/username - po prostu funkcja w kodzie dodawanym do smf porównująca te pola kończyła swoje działanie nie zwracając żadnego wyniku (illegal collation latin_swedish_1 i utf8_general_ci - ale tego błędu nie było widać i to mnie zmyliło) ...

poprawiłem wszystkie wpisy z latin1 (zostały mi jeszcze po starym mambo niektóre) na utf8 i ruszyło!

Wniosek - jeśli w tabelach smf_members i jos_users są różne kodowania/system porównań to integracja nie będzie działać poprawnie :)

pozdrawiam i polecam się na przyszłość :)

słowa kluczowe dla szukających w przyszłości - smf 1.1rc2 utf8 joomla utf-8 integracja joomlahacks

viper
07-04-2006, 18:31
Zobacz ten wątek Mambel Fish - SMF Problem z kodowaniem UTF8 (http://www.simplemachines.pl/component/option,com_smf/Itemid,26/topic,172.0) Może Ci się ta informacja przyda

palik
08-04-2006, 14:49
dzięki wielkie ale ja już mam wszystko w utf8, i joomlę i smf, i pozmieniałem oczywiście polskie langi stosownie (konwersja itd) - wszystko mi działa należycie

Dodatkowa moja rada na serwery z ustawionym domyślnie latin2 jako kodowanie bazy danych - w moim wypadku musiałem dodać linijkę do index.php forum, w okolicy linii 70, nad komentarzem



// Load the settings from the settings table, and perform operations like optimizing.

dodałem linijkę



mysql_query ("SET NAMES 'utf8'");

która po połączeniu z bazą zmienia domyślny tryb połączenia na utf8, nieważne jaki jest ustawiony na serwerze... przynajmniej ja tak to rozumiem, no i przede wszystkim działa :)

dodatkowo w pliku Themes/default/languages/index.polish.php

zmieniłem ustawienie nie tylko zmiennej lang_character_set ale też



$txt['lang_locale'] = 'pl_PL.UTF-8';

po co? bez tego wywołąnie funkcji date zwraca nam informacje w domyślnym kodowaniu serwera (u mnie latin2), a dodając .UTF-8 nakazujemy aby te dane były podawane w utf8 (dzięki czemu nazwy miesięcy i dni są poprawnie wyświetlane)

Przyznam z lekką nieśmiałością, że sporo z tego co tu opisałem pomogli mi zrobić admini serwera blink.pl na którym mam kupiony hosting pod stronę - kryptoreklama czy nie, tym gościom należy się szacuneczek!

działające forum i joomlę można podziwiać (o ile nie zepsuję czegoś) pod adrese, forum.shadowrun.rpg.pl - zapraszam :)

pozdrawiam