Автор Тема: Проблема с шаблонами в "Invision Power Board", помогите пожалуйста.  (Прочитано 8304 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн evgkuz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Когда я перевозил сайт с хостинга на хостинг, то выяснилось что я сделал дамп не в той кодировке. Т.е. вместо русского текста я получил искажённый текст.
Т.е. я сделал дамп в кодировке "UTF 8".
Я конвертировал текст в нужную кодировку (windows1251), но при этом видимо информация частично исказилась.

Вот результат:
http://olsenfanclub.ru/forum/index.php

Повторно сделать дамп я уже не могу, т.к. предыдущий хостёр уже удалил мой аккаунт вместе с сайтов и БД.

Обратите внимание на "<{C_OFF}>", т.е. вместо стандартных картинок форума "Invision Power Board", выводятся плайсхолдеры.

Кто-нибудь может мне сказать в какой таблице БД MySQL можно исправить этот глюк?

Оффлайн for_i_0

  • $15 per hour
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 555
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.php.net/manual/en
evgkuz
точно, тебе наверное никто не скажет. Я вот например про твой Повер боард слышу в первые. Тебе наверное легче будет искать нужную информацию в поисковиках.

Такой вариант устраивает ?

а оригинал дампа в UTF-8 хоть сохранил  себя ? Если да то что тебе мешает пользоватся им не ковертируя ее в другую кодировку ?
[off]Безработный[/off]

Оффлайн evgkuz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
to: for_i_0

Дамп в формате "UTF-8" у меня сохранился.
Если его закачивать, то всё работает, но вместо русского текста козяблики.

Возможно козяблики появляются из-за того что я удаляю этот текст в конце каждой таблицы:
"ENGINE=MyISAM DEFAULT CHARSET=cp1251"

Но на новом хостинге стоит "MySQL версия 3", а эта версия БД не понимает эту надпись (выдаёт ошибки).

Оффлайн evgkuz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Можно ли как-нибудь закачать дамп от "MySQL v. 4" в БД "MySQL v. 3"?

Оффлайн evgkuz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Можно ли как-нибудь закачать дамп от "MySQL v. 4" в БД "MySQL v. 3"?

Проблема в том, что при попытке закачать дамп от "MySQL v. 4" в БД "MySQL v. 3" возникают синтаксические ошибки по поводу следующего кода:

"ENGINE=MyISAM DEFAULT CHARSET=cp1251"

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

Оффлайн html_coder

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 427
  • +0/-0
  • 0
    • Просмотр профиля
Путей у тебя несколько, смотря где ты снимаешь дамп БД.

1) В файле  с дампом просто выполнить глобальную замену, а именно заменить ENGINE=MyISAM на TYPE=MyISAM, практическиу уверен что это решит твою проблему.

2) Если ты снимаешь дамп из PhpMyAdmin, то в закладке Export есть строка SQL export compatibility:, там выпадающая менюха, выбери MySQL 323 тоже должно помочь.

3) Ну или если ты снимаешь при помощи mysqldump, то просто указываешь опцию --compatible=mysql323, тоже должно помочь.

Оффлайн vasa_c

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 0
    • Просмотр профиля
    • http://blgo.ru/blog/
mysql 3 по-моему и CHARSET не поддерживал.
Блог ГО

Оффлайн evgkuz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Я решил, что проще будет обновить MySQL с версии 3 до "4.1.19-win32" на своём локальном сервере.
Но возникла мальнькая проблема:
Я не нашёл библиотеку "php_mysql.dll" ни в "PHP4.3.10", ни в "mysql-4.1.19-win32".
Есть только "libmysql.dll".
До этого "MySQL 3.23" работал без файла "php_mysql.dll".

Где можно найти файл "php_mysql.dll" для "PHP4.3.10" + "mysql-4.1.19-win32"?

Оффлайн vasa_c

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 157
  • +0/-0
  • 0
    • Просмотр профиля
    • http://blgo.ru/blog/
>До этого "MySQL 3.23" работал без файла "php_mysql.dll".
А 4-й работать отказывается?
Блог ГО

Оффлайн evgkuz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
"mysql-4.1.19-win32" через shell - работает, вместе с php - нет.

Может мне кто-нибудь пришлёт файл "php_mysql.dll" для "PHP4.3.10" на Email evgkuz@mail.ru ?

Оффлайн Egorsha

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 60
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Цитировать

Я конвертировал текст в нужную кодировку (windows1251), но при этом видимо информация частично исказилась.


А как ты это делал?

Может не нужно MySQL обновлять а сделать проще?

Тут такое предложение. А если конвертировать в нужную кодировку файл дампа на локальной машине? Написать php-скрипт и используя функцию iconv() перекодировать так как нужно.
Скрипт будет весить строчек 10.

Потребуется правда подключть расширение php_iconv.dll. На локальном сервере это проблем не составит. Если сервер начнет ругаться, что не может подключить это расширение, то это от того что не может найти некоторые dll-ки. Перепишешь iconv.dll в system32 и все заработает. Локально под XP у меня все именно так и работает.

Оффлайн evgkuz

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Спасибо, я забыл использовать "OLD_PASSWORD". Всё работает.

Вот что нужно сделать чтобы работали PHP4 + MySQL4:


mysql -h localhost -u root -p

USE mysql;
UPDATE user SET password=OLD_PASSWORD(\'test\') WHERE user=\'root\';
FLUSH PRIVILEGES;

 

Sitemap 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