Kauman 0 04/19/2015 11:37 AM Здравствуйте, прошлую проблему с базой пофиксил, появилась новая.Форум функционирует, но когда перехожу в какую-нибудь тему выдает ошибку If you are seeing this page, it means there was a problem communicating with our database. Sometimes this error is temporary and will go away when you refresh the page. Sometimes the error will need to be fixed by an administrator before the site will become accessible again. You can try to refresh the page by clicking here Помогите пожалуйста, люблю Вас. Share this post Link to post
siv1987 2,623 04/19/2015 12:54 PM 1. В логах /cache/sql_error_*.cgi нужно смотреть код и сообщения ошибки.2. Для "There appears to be an error with the database" есть общая тема. Либо озаглавить тему таким образом, что-бы она отражала суть проблемы связанной базой данных.3. В профиле нужно указать реальный адрес форума. Share this post Link to post
Kauman 0 04/19/2015 07:21 PM Date: Sun, 19 Apr 2015 19:20:08 +0000 Error: 1267 - Illegal mix of collations (cp1251_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=' IP Address: 175.46.78.44 - /index.php/topic/32-howtobesexy ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: SELECT t.*,xxx.* FROM topics t LEFT JOIN core_tags_cache xxx ON ( xxx.tag_cache_key=MD5(CONCAT('forums',';','topics',';',t.tid)) ) WHERE t.tid=32 .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. | File | Function | Line No. | |----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------| | admin/sources/base/ipsRegistry.php | [app_class_forums].__construct | 1389 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' Вот код ошибки Share this post Link to post
siv1987 2,623 04/19/2015 07:23 PM http://ipbskins.ru/forum/topic11344.htmlhttp://ipbskins.ru/forum/topic9371.html Share this post Link to post
Kauman 0 04/19/2015 08:46 PM http://ipbskins.ru/forum/topic11344.htmlhttp://ipbskins.ru/forum/topic9371.html Вообщем сами столбцы были в cp1251 перекодировал их в utf8 ( ничего не изменилось )При входе в некоторые из них в Сравнение:стоит cp1251_general_ciХотя сама таблица в utf8_general_ci, строчки в ней в cp1251_general_ciКак их быстро пофиксить и нужно ли это ? Как я понял и таблица и столбцы в ней должны быть одинаковой кодировки, что бы данной ошибки не было, вручную очень трудно, есть sql запрос что бы он сам все изменил ? Share this post Link to post
siv1987 2,623 04/19/2015 09:08 PM Кодировку нужно менять на уровне таблицы, а не для каждого столбца отдельно.Если прочитать вышеуказанные темы можно найти и sql запрос для конвертирования данных и смены кодировке. Share this post Link to post
Kauman 0 04/19/2015 09:30 PM Кодировку нужно менять на уровне таблицы, а не для каждого столбца отдельно.Если прочитать вышеуказанные темы можно найти и sql запрос для конвертирования данных и смены кодировке. Я переставил все в utf8, но не работает всё равно.Админка работает, Главная форума тоже, в профиль пользователя могу войти, а вот именно в топик - нет, вот код, могу заплатить за решение проблемы только озвучьте цену.---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Date: Sun, 19 Apr 2015 21:27:37 +0000 Error: 1267 - Illegal mix of collations (cp1251_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=' IP Address: 37.140.141.38 - /index.php/topic/1541-nedorogie-oteli-po-gollandski/?view=getlastpost ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- mySQL query error: SELECT t.*,xxx.* FROM topics t LEFT JOIN core_tags_cache xxx ON ( xxx.tag_cache_key=MD5(CONCAT('forums',';','topics',';',t.tid)) ) WHERE t.tid=1541 .--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. | File | Function | Line No. | |----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------| | admin/sources/base/ipsRegistry.php | [app_class_forums].__construct | 1389 | '----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------' Share this post Link to post
Kauman 0 04/19/2015 09:38 PM Проблему решил самостоятельно. Возможно кому-нибудь будет полезно.При SQL запросе ALTER TABLE `имя` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci - Изменилось, но только визуальноПри SQL запросе ALTER TABLE имя CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; - Изменилось и форум заработалНе путайте, подчеркнул. P.S Спасибо данному форуму за помощь, а особенно администрации, которая уже сотню раз проходила этот вопрос, но не устает помогать новичкам, люблю Вас . Share this post Link to post
siv1987 2,623 04/19/2015 10:29 PM DEFAULT CHARACTER SET - кодировка по умолчанию; то значение, которое показывается в show create table в default. Все новые текстовые столбцы в этой таблице по умолчанию будут иметь эту кодировку. CONVERT TO CHARACTER SET - изменит кодировку всех столбцов а также перекодирует данные в них. To change the table default character set and all character columns (CHAR, VARCHAR, TEXT) to a new character set, use a statement like this: ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name [COLLATE collation_name];To change only the default character set for a table, use this statement: ALTER TABLE tbl_name DEFAULT CHARACTER SET charset_name; The word DEFAULT is optional. The default character set is the character set that is used if you do not specify the character set for columns that you add to a table later Share this post Link to post