Перейти к контенту
  • 0

Кодировки в IPB 2.1.х


ross104

Вопрос

Знаю что этот вопрос тут 100 раз поднимался и все дружно посылают в Поиск по слову Кодировка но решения ни в одной теме нет! Поэтому предлагаю решение даного вопроса оставить в отдельном топике.

 

Так вот:

после обновления с 2.1.1 на 2.1.3 доска начала генерить надписи вида "???????????" вмето "Користувачі"

Даные сервака

PHP version 4.3.11

MySQL version 4.1.13-standard

Apache version 1.3.33 (Unix)

 

На серваке никто и ничего менять не будет поскольку он виртуальный и висит в штатах тоесть решать надо кустарными методами.

 

Заранее благодарю за ответ как это исправить. Думаю поблагодарат и многие другие пользователи которые послушно идут в тему Кодироки читают 13 страниц и молча ищут решения проблемы сами.

 

 

Заголовок темы отредактирован.

Тема закреплена.

Изменено пользователем sM1Le
Ссылка на комментарий
Поделиться на других сайтах

  • Ответы 344
  • Создана
  • Последний ответ

Лучшие авторы в этом вопросе

Лучшие авторы в этом вопросе

Загружено фотографий

Рекомендуемые сообщения

  • 0

Напишу и в суппортную тему, т.е. сюда.

Есть кенты, с ними траблы продолжаются.

Началось с того, что версия 1.3.1 их не устроила, они где-то купили 2.1.5. Фиг с ними - установил с дистрибутива, ошибок критических при инсталляции не было, все работало.

Теперь они в 3-й раз решили сменить хостинг :D. Не буду перечислять проблемы, которые были на 1.3.1 и первом переезде, когда фактически были утеряны базы, что-то восстановил с бэкапа. Но и там день провозился со знаками "????", пока мне лично ;) не выделили MYSQL сервак с cp1251 по умолчанию. С чем и работал доселе.

Кенты опять переехали. Хостинг лучше. Но никто ради нас cp1251 делать не станет. Есть utf8 - работайте.

Но с прошлого раза крепко "забил" на phpmyadmin. Но в данном случае и SypexDumper не помог. Учитывая, что дамп снял в cp1251. Снял также в phpmyadmin и из Админки (utf8 и cp1251 соотв.).

Но вот SypexDumper -> SypexDumper дает опять.... вопросы. Все равно день опять промаялся - перебрал ВСЕ варианты дампов, варианты разных подгрузок (в phpmyadmin менял в "импорте" кодировку файлов (дурное дело, все равно, ИМХО, хватает из MYISAM), загружал все дампы последовательно SypexDumper, менял скрипты по одному изменению (ИМХО, в теме приведены все варианты). Единственное, что не мог - пхпклубовский совет выполнить, ибо нет доступа к *.cnf.

Так вот - вариантов без "???", но с Юникодом было несколько, но вот сделать их читабельными не сложилось.

Да, и самое интересное - хостеры грят, что база у них тоже нечитабельна, тоже "кракозяблы" или "????".

На локалке все работает, тут даже и 10 минут не потратил :)

Так в чем же еще траблы?

 

В итоге вопросы:

1) виноваты ли однозначно хостеры?

2) возможна ли глючность баз?

3) какие кодировки в базах используют в реале? поддерживают ли Юникод в IPB?

 

Это все по сути сводится к тому, что у меня есть 3-й форум на в общем-то нелегитимном 1.3. И я очень сильно опасаюсь, что при покупке IPB 2.x (а что покупать скрипт буду - сомнений нет) все написанные сообщения опять глюканут и я опять буду день тратить на поиск неприятностей. Не считаю себя отсталым по вопросам БД, но одно знаю четко - базы есть пассивный элемент. И если элемент читабельный, то проблемы надо искать на хостинге и в скриптах. К первому обычно мало кто имеет доступ и там надо уповать на хорошие познания суппортеров. Но все же я доселе (до "эпохи IPB") на СУБД никогда не пенял. Ибо нереально поставить СУБД так, чтобы нормальная база стала нефункциональной. А значит - проблема в скриптах. А вот тут мне интересно мнение гуру.

И вовзращаясь к странице 1 - логика подсказывает, что при двух одинаковых внешне скриптах, но один честный, другой "нуленый", они не могут создавать разных баз. Либо это будет заметно :). По сути - либо пишет в базу по-русски, либо как-то иначе (второе недопустимо). А значит проблема в скриптах исполнения команд к базам. В "нуленых" они явно ошибочны. А вот теперь к той же логике - от скрипта база в общем-то независима...

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Поддерживает.

Берёте дамп и конвертите прогой кодировку из цп в утф. Наверное есть крипты на php уже написанные для данной задачи, но если есть ликсовая консоль, то

iconv CP1251 UTF-8 in.sql > out.sql

смотрите описание утилиты в гугле или описание функции iconv на php.net

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Поддерживает.

Берёте дамп и конвертите прогой кодировку из цп в утф. Наверное есть крипты на php уже написанные для данной задачи, но если есть ликсовая консоль, то

iconv CP1251 UTF-8 in.sql > out.sql

смотрите описание утилиты в гугле или описание функции iconv на php.net

 

Спасибо. По этой задаче понятно. На 2-ом хостинге хостеры как раз этим пытались и заниматься...

Консоли, увы, нет... Сконвертил на локалке.

 

Остальные вопросы, впрочем, остаются...

 

Эврика!

Я про то, что база заработала на UTF-8. Но теперь вопрос как обратно :D Ибо на локалке мне нужно всегда иметь свежачок в cp1251 для бэкапа. Впрочем, кажись, SypexDumper сможет выдать правильный дамп ;)

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Можно же через дампер в utf8 а потом либо так и хранить или на локале конвертить ведь? :D
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Можно же через дампер в utf8 а потом либо так и хранить или на локале конвертить ведь? :)

 

Конвертить на локале надо :D

Я поясню - обычно я читаю в форумах избранные темы. Если явных нарушений нет - вышел и так далее. На локалке я пересматриваю весь форум, дома ;)

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Подскажите пожалуйста, стоял у меня форум на одном хосте

localhost

 

* Версия сервера: 4.1.21-standard

* Версия протокола: 10

* Сервер: Localhost via UNIX socket

* Пользователь: 123@localhost

* MySQL-кодировка: UTF-8 Unicode (utf8)

*

перенес на другой

 

MySQL - 4.1.12-log

 

* Protocol version: 10

* Сервер: 213.186.117.118 via TCP/IP

* Пользователь: 123@123.com.ua

* MySQL-кодировка: UTF-8 Unicode (utf8)

*

перенес Бд везде знаки вопроса, вроде кодировки одинаковые, что делать !?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

чем переносите базу? дампером??

 

в dumper.php, в настройках сделать

 

define('RESTORE_CHARSET', 'forced->cp1251');

 

тогда, какой бы не была кодировка при бэкапе, при восстановление будет принудительно ставить 1251

 

зы: там, кстати, это написано :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0

дампером не могу, ошибку вылазит. как можно по другому ?

 

Warning: mkdir(backup/) [function.mkdir]: Permission denied in /home/pocket/public_html/123/dumper.php on line 100

 

Fatal error: Не удалось создать каталог для бекапа in /home/pocket/public_html/123/dumper.php on line 100

 

просто у меня пароль и логин на все БД одинаковый.

 

Когда делаю Бекап phpMyAdmin то в самом бекапе крякозябры, так же само когда делаю с Cpanelи , там нету русского языка.

 

ХЕЛП нужна срочно помощь

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Помогите люди! уже неделю парюсь

Значит переношу сайт и форум с одного хостинга на другой

сделал бэкап скриптом Symper Dampex, установил на новом хосте движки, через этот же скрипт задампил БД, теперь на сайте весь контент, что в БД показывается в ??? ???? ????, а тот, что в файлах движка - нормально, все эти способы с коннектом к БД не помогают, через пхпмайадмин переписал все кодировки с latin_swedish_ci на cp1251

я уже не знаю что пробовать, может какой-то из способов неправильно юзал?

Ссылка на комментарий
Поделиться на других сайтах

  • 0
дампером не могу, ошибку вылазит. как можно по другому ?

 

Warning: mkdir(backup/) [function.mkdir]: Permission denied in /home/pocket/public_html/123/dumper.php on line 100

 

Fatal error: Не удалось создать каталог для бекапа in /home/pocket/public_html/123/dumper.php on line 100

 

просто у меня пароль и логин на все БД одинаковый.

 

Когда делаю Бекап phpMyAdmin то в самом бекапе крякозябры, так же само когда делаю с Cpanelи , там нету русского языка.

 

ХЕЛП нужна срочно помощь

 

Ну дык посмотри, что у тебя стоит в строке 100 :D Возможно, обращение к данной константе.

phpmyadmin вообще "криво" сделана, проверено не раз. Только в некоторых старых версиях еще ничего. По сути майадмин вытягивает данные в серверной кодировке. Т.е. если у тебя база цп-1251, а на сервере МуСКЛ стоит ютф-8, то майадмин выдаст данные в ютф-8. Подозреваю, что это "лечится", просто хостеры обычно ленивы ;)

Пошурши по форуму на предмет mysql_connect ... Один раз надо в скрипт форума прописать, что базу подключать в 1251 и вообще проблема интересовать не будет.

 

Помогите люди! уже неделю парюсь

Значит переношу сайт и форум с одного хостинга на другой

сделал бэкап скриптом Symper Dampex, установил на новом хосте движки, через этот же скрипт задампил БД, теперь на сайте весь контент, что в БД показывается в ??? ???? ????, а тот, что в файлах движка - нормально, все эти способы с коннектом к БД не помогают, через пхпмайадмин переписал все кодировки с latin_swedish_ci на cp1251

я уже не знаю что пробовать, может какой-то из способов неправильно юзал?

Пошурши по форуму на предмет mysql_connect ... Один раз надо в скрипт форума прописать, что базу подключать в 1251 и вообще проблема интересовать не будет.

Никаких изменений в майадминке с базой не делай, потом базу не восстановишь, хрень одна будет.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Пошурши по форуму на предмет mysql_connect ... Один раз надо в скрипт форума прописать, что базу подключать в 1251 и вообще проблема интересовать не будет.

Никаких изменений в майадминке с базой не делай, потом базу не восстановишь, хрень одна будет.

 

уже перепробовал все способы, которые здесь предлагались

я лучше заплачу тому, кто решит пролему

пишите в личку - напишу свой номер icq

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Спасиб всем! помогли!
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Помогите советом

Стоит IPB 2.1.7 уже год. база 4.1... всё работало без сбоев. Хостер поменял базу на 5.0.37 и начались проблемы. Появились ????? в сообщениях и темах. Шаблоны так и отображаються по русски. Не знаю правильно объясняю или нет, заходя в пхпадмин база форума отображалась сравнение latin1_swedish_ci.

В админке - настройки стоит windows 1251.

Что теперь делать? как исправить кодировку?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Устанавливал мод XT Reputation System но там кодировка тоже не правильная не подскажете где её менять?

IPB 2.2.2 если что вижу что тема про 2.1. но всё же помогите

Ссылка на комментарий
Поделиться на других сайтах

  • 0

после коннекта с хостом скуля ставите вот эту строчку:

 

if (mysql_get_server_info()>"4.1")

mysql_unbuffered_query("SET NAMES cp1251");

Ссылка на комментарий
Поделиться на других сайтах

  • 0

не хотел создовать новую тему так что напишу тут у меня такая проблем

 

IPB WARNING [2] main(d:\appserv\www\upload/conf_global.php): failed to open stream: No such file or directory (Line: 66 of \index.php)

 

помогите разобраться пожалуйста :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Народ, я перечитал всю тему но мне ничего не помогло :D Я переезжаю на новый хостинг, а хостинг использует кодировку cp1251. Версия моего форума 2,1,7.Как мне сделать, чтобы убрать все знаки вопросов??? Помогите плииииииииииз! ;)
Ссылка на комментарий
Поделиться на других сайтах

  • 0
вобщем ребята, я в отчаинье :D есть форум на оч плохом хосте - часто падает, пишет mysql too many connection и тогдалее, но он есть и потихоньку живет, решил переехать на другой хостинг, уже оплатил его и все такое, сделал полный бекап всего сайта, в том числе и базы, залил все это на новый хост, отредактировал конфиг форума и т.д. захожу на форум а у меня на форуме половина нормально, а половина в знаках вопроса, бекап базы делал и Sypex Dumper и пхп майадмин и серавно нечего не получается ;) хоть плач блин))) скажите как это исправить? как правильно сделать бекап базы... я уже незнаю что и думать.... раньше когда переезжал на хост который щас, все нормально встало, и база и форум и небыло таких проблем
Ссылка на комментарий
Поделиться на других сайтах

  • 0
вобщем ребята, я в отчаинье :D есть форум на оч плохом хосте - часто падает, пишет mysql too many connection и тогдалее, но он есть и потихоньку живет, решил переехать на другой хостинг, уже оплатил его и все такое, сделал полный бекап всего сайта, в том числе и базы, залил все это на новый хост, отредактировал конфиг форума и т.д. захожу на форум а у меня на форуме половина нормально, а половина в знаках вопроса, бекап базы делал и Sypex Dumper и пхп майадмин и серавно нечего не получается ;) хоть плач блин))) скажите как это исправить? как правильно сделать бекап базы... я уже незнаю что и думать.... раньше когда переезжал на хост который щас, все нормально встало, и база и форум и небыло таких проблем

Уменя та же проблема :) Уже не знаю чёделать, весь текс который был в базах в знаках вопросах :)

Если кто знает как решить проблему стуканите мне в асю 545-894

Ссылка на комментарий
Поделиться на других сайтах

  • 0

вобщим поставил я на новый хост новый форум, ????? - пропали, сделал бекап с нового форума и сравнил с бекапом со старого хостинга

 

вот со старого хоста какая кодировка

 

ENGINE=MyISAM AUTO_INCREMENT=1015 DEFAULT CHARSET=latin1;

 

а вот с нового

 

ENGINE=MyISAM /*!40101 DEFAULT CHARSET=utf8 */ /*!40101 COLLATE=utf8_unicode_ci */;

 

пробывал дампером пользоватся, и насильно поменять всю эту кодировку но не фига не получается :D

кто знает как решить проблему

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Проблема здесь описывалась, но осталась без ответа...

 

Есть:

Версия IPB v2.1.6

Версия SQL MYSQL (5.0.27-standard), MySQL-кодировка: UTF-8 Unicode (utf8)

Версия PHP 5.1.2 (apache)

 

После переезда на данный хост залил базу (все таблицы норм отображаются) и файлы форума. Все вроде запустилось: везде красота, все по русски - и оглавление, и темы, и посты. Даже помошник).

НО стоит написать ОДИН пост и все, оглавление все в ??????? ?? ?????, новый пост тоже. А темы и старые посты нормально. При заходе в базу все таблицы в норме остаются.

 

Базу заливал и в УТФ и 1251 с выставлением кодировки как через Админку, так и в файлах путем указания типа запроса.

 

Один хрен ;)

 

Помогите пажалуста!!!

 

В общем полюбившись с форумом решил я его переставить. Очистил базу. Очистил каталог, залил по новой файлы. Проинсталял. Посмотрел в созданых таблицах кодировку. Оказалась Латин1. В дампе поставил ЧАРСЕТ Латин1 и импортнул.

И все пучком заработало... Нигде ничего не менял. Сижу в шоке... :D

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.