|
|
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo
|
|
Przesunięty przez: chelloPL 14-09-2007, 23:41 |
[Problem] Odbuduj Search |
Autor |
Wiadomość |
kamilko
Posty: 78
|
Wysłany: 07-07-2007, 12:20 [Problem] Odbuduj Search
|
|
|
Witam,
Gdy chce odbudować Search wyskakuje mi błąd:
Kod: | Błąd Ogólny
Could not insert new word matches
DEBUG MODE
SQL Error : 1271 Illegal mix of collations for operation ' IN '
INSERT INTO phpbb_search_wordmatch (post_id, word_id, title_match) SELECT 10328, word_id, 2 FROM phpbb_search_wordlist WHERE word_text IN ('nie', 'jest', 'dzwonek', 'tylko', 'ktos', 'dzwoni', 'czarka', 'może', 'stare', 'ale', 'śnieszne')
Line : 265
File : functions_search.php |
[ Dodano: 09-07-2007, 16:36 ]
spr. chceck files i optymalizacja nic nie daje
Kod: | REPAIR TABLE `phpbb_search_wordlist` , `phpbb_search_wordmatch`
OPTIMIZE TABLE `phpbb_search_wordlist` , `phpbb_search_wordmatch` |
i nic |
|
|
|
|
Gadatliwa Kasia
|
|
|
|
sniper89
Pomógł: 5 razy Posty: 32
|
Wysłany: 13-09-2007, 15:49
|
|
|
W końcu, po długich bojach, udało mi się tego dokonać.
W db/mysql4.php (teoretycznie powinno pomóc samo "SET NAMES", ale najwyraźniej skrypt usuwa i tworzy nowe tabele o domyślnym kodowaniu używanym przez bazę więc potrzeba i "SET CHARSET"):
Kod: | //
// Constructor
//
function sql_db($sqlserver, $sqluser, $sqlpassword, $database, $persistency = true)
{
$this->persistency = $persistency;
$this->user = $sqluser;
$this->password = $sqlpassword;
$this->server = $sqlserver;
$this->dbname = $database;
$this->db_connect_id = ($this->persistency) ? mysql_pconnect($this->server, $this->user, $this->password) : mysql_connect($this->server, $this->user, $this->password);
if( $this->db_connect_id )
{
mysql_query('SET NAMES \'latin2\'');
mysql_query('SET CHARSET latin2'); |
gdzie latin2 to Twoje kodowanie.
Później "Odbudowujesz Search", wchodzisz do phpMyAdmina i zmieniasz kodowanie tabel phpbb_search_* na to, którego używasz (w moim przypadku latin2_general_ci), a później także kolumn tych tabel (ważne!!!, zwróć także uwagę na to, że jedna z kolumn ma kodowanie latin2_bin, a nie latin2_general_ci, lub odpowiednio inną *_bin). Następnie usuwasz linijkę
Kod: | mysql_query('SET CHARSET latin2'); |
z mysql4.php i voila! |
|
|
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
Kopiowanie wszelkich treści zawartych na forum, modyfikacji oraz instrukcji bez zgody administracji i autorów tematów/postów zabronione!
Powered by phpBB modified by Przemo © 2003 phpBB
| Strona wygenerowana w 0,06 sekundy. Zapytań do SQL: 12 | |
|
|