Показать сообщение отдельно
Wind вне форума      Старый Изучаем структуру бызы phpnuke #1  
Аватара для Wind
Wind
Участник
Регистрация: 10.03.2006
Сообщения: 74


Пожаловаться на это сообщениеОтветить с цитированием

Посмотреть профиль Отправить персональное сообщение для Wind Найти все сообщения от Wind Добавить Wind в список друзей  
14.03.2006, 15:33

За что отвечает nuke_bbsearch_wordlist ? У меня там вот что:

DROP TABLE IF EXISTS nuke_bbsearch_wordlist;
CREATE TABLE `nuke_bbsearch_wordlist` (
`word_text` varchar(50) NOT NULL default '',
`word_id` mediumint(8) unsigned NOT NULL auto_increment,
`word_common` tinyint(1) unsigned NOT NULL default '0',
PRIMARY KEY (`word_text`),
KEY `word_id` (`word_id`)
) ENGINE=MyISAM /*!40101 DEFAULT CHARSET=latin1 */;

INSERT INTO `nuke_bbsearch_wordlist` VALUES
('faq', 1, 0),
('вопросы', 2, 0),
('задаем', 3, 0),
('которые', 4, 0),
('ответы', 5, 0),
('разделе', 6, 0),
('увидеть', 7, 0),
('хотите', 8, 0),
......И ТУТ ПОШЕЛ ВОТ ТАКОЙ ЗДОРОВЕННЫЙ СПИСОК НАБОРА СЛОВ КАКИХ-ТО.

Можно ли это удалить и сделать как в первоначальной базе:

CREATE TABLE `nuke_bbsearch_wordlist` (
`word_text` varchar(50) NOT NULL default '',
`word_id` mediumint(8) unsigned NOT NULL auto_increment,
`word_common` tinyint(1) unsigned NOT NULL default '0',
PRIMARY KEY (`word_text`),
KEY `word_id` (`word_id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;

Расскажу зачем мне это и в чем вообще дело.
Как я только поставил phpnuke базу я импортировал с кодировкой binary, так как с 1251 у меня в результате были вместо букв одни вопросы и я не знал, как исправить, а с этой кодировкой (binary) все работало. Но сейчас я разобрался как все сделать: дописать в db/db.php код
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
- мне только это помогло. И так, что я делаю!? Беру свою базу и заменяю в строке ENGINE=MyISAM /*!40101 DEFAULT CHARSET=latin1 */;
latin1 на cp1251 или же просто пробовал полностью удалять эту строку и в phpmyadmin создавал базу nuke таким образом: CREATE DATABASE `nuke` DEFAULT CHARACTER SET cp1251 COLLATE cp1251_general_ci; После я через скрипт dumper загонял измененный sql файл в базу nuke. Процесс шел замечательно до таблицы:
Таблица `nuke_bbsearch_wordlist`.
2006.03.14 14:02:20
Возникла ошибка!
Неправильный запрос.
дХВМЙТХАЭБСУС ЪБРЙУШ '???????' РП ЛМАЮХ 1

Захожу в phpmyadmin и смотрю что в таблице nuke_bbsearch_wordlist, а там вместо
('faq', 1, 0),
('вопросы', 2, 0),
('задаем', 3, 0), и т.д
вот такое
faq 1 0
??????? 2 0
?????? 3 0
то есть вместо русский слов он запихнул вопросы из-за чего и выскочила ошибка и почему я и спрашиваю можно ли это удалить из sql файла вообще. Надеюсь понятно разъеснил всю суть проблемы. Помогите пожалуйста.