• Rejestracja
vBHELP.pl - polskie wsparcie vBulletin
Strona 1 z 2 12 OstatniOstatni
  1. #1
    cizu jest nieaktywny Advanced Member
    Dołączył
    Aug 2008
    Posty
    454

    Domyślnie Określanie kodowania

    Ano, właśnie zetknąłem się z problemem określenia używanego kodowania.
    Forum na poprzednim skrypcie mamy ustawione (languages) charset utf-8,
    natomiast w bazie danych mamy wszystko latin2_general_ci, porównywanie utf8_general_ci.
    I teraz jak ustawić vbulletin + impex by bezbłędnie prze konwertował bazy danych



  2. #2
    Awatar Max
    Max
    Max jest nieaktywny There's something in the Air ...
    Dołączył
    Jan 2008
    Posty
    4 775
    Przydatne posty
    252
    Wpisów
    13

    Domyślnie

    Czyli trochę namieszane... Skonwertuj najlepiej wszystko do jednego kodowania. Zyskasz pewność, że nie natrafisz nie nieprzewidziane problemy, z którymi ciężko będzie sobie poradzić.


  3. #3
    cizu jest nieaktywny Advanced Member
    Dołączył
    Aug 2008
    Posty
    454

    Domyślnie

    I teraz pytanie czy lepiej wybrać UTF-8 czy Latin-2 ?


  4. #4
    Awatar Max
    Max
    Max jest nieaktywny There's something in the Air ...
    Dołączył
    Jan 2008
    Posty
    4 775
    Przydatne posty
    252
    Wpisów
    13

    Domyślnie

    Dowiedz się u administracji hostingu jakie kodowanie wymusza serwer i na takie zmień.


  5. #5
    cizu jest nieaktywny Advanced Member
    Dołączył
    Aug 2008
    Posty
    454

    Domyślnie

    Defaults charset is also UTF-8.

    Ale to nie ma chyba, większego znaczenia?

    Dobrze załóżmy że konwertowałbym bazę na UTF-8 to rozumiem że:

    Kod:
    iconv -f iso-8859-2 -t utf-8 bazadanych.sql > bazadanych-utf8.sql
    wgrywamy bazę i otwieramy config vbulletin
    dajemy:
    Kod:
     $config['Mysqli']['charset'] = 'utf8';
    otwieramy
    impex> config

    Kod:
    // Advanced Target
    $impexconfig['target']['databasetype']	= 'mysql';	// currently mysql only
    $impexconfig['target']['charset']		= 'utf8';
    $impexconfig['target']['persistent']	= false; 	// (true/false) use mysql_pconnect
    a dla źródła
    Kod:
    // Advanced Source
    $impexconfig['source']['charset']		= 'utf-8';
    $impexconfig['source']['persistent']	= false;
    i w vbulletin-style

    Kod:
    <?xml version="1.0" encoding="UTF-8"?>
    i powinno wszystko poprawnie działać?


  6. #6
    Młody jest nieaktywny Użytkownik vBHELP.pl
    Dołączył
    Feb 2008
    Posty
    608
    Przydatne posty
    2

    Domyślnie

    wejdź w phpmyadmina na serwerze a potem
    server_variables.php

    i tam masz kodowanie, najlepiej zrób screena.

    kodowanie możesz wymusić w config.php, lecz są problemy z importem baz, najlepiej miec dostęp ssh i tam wymusić kodowanie podczas importu.

    Przykładowo masz bazę latin2, na serwerze jest latin1 i przy imporcie wysypią Ci znaki ? bo mysql nie rozpozna znaków z latin2. Wtedy pozostaje Ci tylko zmienić config kodowania na serwerze lub zaimportować przez SSH (wymuszając kodowanie -default-character-set=latin2)

    Defaults charset is also UTF-8.
    takie kodowanie jest w phpmyadminie, nie na serwerze

    BTW: iconv nie rozpoznaje znaków PL z latin1.

    P.S daj jeszcze nazwe hosta na którym instalowałeś forum, wtedy określimy jakie kodowanie w bazie masz.
    Ostatnio edytowane przez Młody ; 09.01.2009 o 14:05


  7. #7
    cizu jest nieaktywny Advanced Member
    Dołączył
    Aug 2008
    Posty
    454

    Domyślnie

    Mistrz świata
    zrobione:
    -baza smf w latin2
    -baza vbulletin latin2

    Dla impexcofing.php
    Kod:
    // Advanced Source
    $impexconfig['source']['charset']		= 'latin2';
    $impexconfig['source']['persistent']	= false;
    w config.php
    Kod:
    $config['Mysqli']['charset'] = 'latin2';
    w ACP>Languages&Phrases>Language Manager > Edit settings> ISO-8859-1 czy UTF-8 czy co tam mamy zmianiamy na ISO-8859-2


    Hm, ale teraz mam dylemat czy zostać przy latin2 czy może iść w te utf8


  8. #8
    Młody jest nieaktywny Użytkownik vBHELP.pl
    Dołączył
    Feb 2008
    Posty
    608
    Przydatne posty
    2

    Domyślnie

    w ACP>Languages&Phrases>Language Manager > Edit settings> ISO-8859-1 czy UTF-8 czy co tam mamy zmianiamy na ISO-8859-2
    ISO-8859-2 ustaw
    Hm, ale teraz mam dylemat czy zostać przy latin2 czy może iść w te utf8
    Twój wybór.


  9. #9
    cizu jest nieaktywny Advanced Member
    Dołączył
    Aug 2008
    Posty
    454

    Domyślnie

    Młody - a co npisałem :>
    ISO-8859-2 ustaw


  10. #10
    Awatar Max
    Max
    Max jest nieaktywny There's something in the Air ...
    Dołączył
    Jan 2008
    Posty
    4 775
    Przydatne posty
    252
    Wpisów
    13

    Domyślnie

    Hm, ale teraz mam dylemat czy zostać przy latin2 czy może iść w te utf8
    W przypadku utf8 problemy z polskimi diakrytykami występują rzadziej niż przy latin2 (np. przy przenoszeniu forum na inny serwer).


Strona 1 z 2 12 OstatniOstatni

Podobne wątki

  1. Zmiana loga w określonych godzinach
    By mateusz2813 in forum Pytania i problemy
    Odpowiedzi: 1
    Ostatni post / autor: 15.02.2010, 13:39
  2. Reguły dostępu do określonego działu
    By chomiczek in forum Pytania i problemy
    Odpowiedzi: 7
    Ostatni post / autor: 02.11.2009, 19:24
  3. zablokowanie dostępu do określonego forum
    By chomiczek in forum Pytania i problemy
    Odpowiedzi: 7
    Ostatni post / autor: 10.02.2009, 10:12
  4. Uprawnienia do głosowania w określonej ankiecie
    By mateusz2813 in forum vBulletin 3
    Odpowiedzi: 1
    Ostatni post / autor: 17.11.2008, 16:58
  5. Zaplanowane zadanie co określony czas
    By creative in forum Pytania i problemy
    Odpowiedzi: 2
    Ostatni post / autor: 19.07.2008, 23:18
Chmurka.pl

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67