Перейти к содержимому


Партнерская программа Kredov

Проблемы с кодировкой

#1 Bender

Bender
  • Пользователь
  • 712 сообщений
  • Репутация: 0
0

Отправлено 11 Февраль 2009 - 22:58

Я настроил на локалке форум phpbb2, посоздавал топики, разделы. Потом все файлы как они есть перенес на хостинг. Привязал движек к новой базе данных, в которую я внес sql-запрос, который экспортировал с phpmyadmin денвера, изменил только домен и путь к скрипту. Все работает, только заместо всего того что я писал сам (имена топиков, разделов) вопросительные знаки. Почему оно так?

 

 

  • 0

#2 Xap

Xap
  • Пользователь
  • 1 520 сообщений
  • Репутация: 0

Отправлено 11 Февраль 2009 - 22:59

А в какой кодировке Вы базу новую создавали и в какой была старая?
Если все стыкуется может как-то открывали в редакторе и сохранили не в той кодировке.
  • 0

#3 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 12 Февраль 2009 - 00:18

Старая точно cp1251, новая точно utf-8. Проверить можно посмотрев таблицы через phpMyAdmin. Если ???? Значит нужно сменить кодировку базы на cp1251. Также может не совпадать кодировка сайта и базы, тогда нужно привести сайт и базу к одной и той же кодировке.

А про локализацию БД почитать можно тут Локализация базы данных
  • 0

#4 zox

zox
  • Пользователь
  • 247 сообщений
  • Репутация: 2

Отправлено 03 Апрель 2010 - 09:15

Тоже проблема...
При переезде на новый сервер, на сайте вместо русского языка - одни вопросы....

Что я делаю не так?
1. Сделал экспорт с кодировкой cp1251 (в копии БД весь текст на русском).
2. На новом сервере сделал импорт копии БД и указал кодировку cp1251
3. Теперь вот так:
1.gif
4. А на сайте одни вопросы
5. у сайта charset=windows-1251

Уже и так и сяк менял эти кодировки:rolleyes: помогите...
  • 0

#5 gaaarfild

gaaarfild
  • Пользователь
  • 596 сообщений
  • Репутация: 0

Отправлено 04 Апрель 2010 - 10:57

А сам документ, куда сохранил при переносе - он UTF? Тот, который с запросами SQL.
  • 0

#6 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 05 Апрель 2010 - 10:01

zox, советую вам в скрипте после соединения с БД поставить локализацию данных. Выполняется это запросом вида:
SET NAMES 'cp1251'

  • 0

#7 zox

zox
  • Пользователь
  • 247 сообщений
  • Репутация: 2

Отправлено 06 Апрель 2010 - 13:56

Уже исправил всё. :rolleyes:
спасибо, за ответ.
  • 0

#8 phpuser

phpuser
  • Пользователь
  • 520 сообщений
  • Репутация: 8

Отправлено 20 Апрель 2010 - 21:02

У меня тоже проблемы с кодировкой. На локалке всё работает а на хосте нет ((
У сайта кодировка windows-1251.
Сама БД тоже в 1251. Некоторые таблицы правда в utf-8, но на локалке то всё работает.
Вместо русского текста идут ?????.
Чё делать не пойму, есть одно бредовое предположение моего друга что всё дело в том что хост windowsсовский.

  • 0
Вникаю в тему создания сайтов...


#9 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 20 Апрель 2010 - 21:15

phpuser,
1) Попробуйте локализовать как я уже сказал выше. Гялу у вас таблицы utf8 большая часть, ну да это не важно. Локализуйте.
2) Проблема может быть на стороне хостера. У меня имелась проблема с одним сайтом. Что только не делал и локализацию, и все файлы переводил в нужную кодировку, да и заголовок ставил. Все браузеры кроме IE6 работали стабильно, а его как выбивало. То вообще страницы не открывал(белый экран), то иероглифы (у меня была проблема с кодировкой сайта UTF-8)
Проблема оказалась в том, что сервер передавал изначально кодировку windows-1251, многие браузеры на это внимания не обращали, но не IE6, тот хавал не глядя на инфу и мои заголовки.
Проблему решил изменением параметров сервера через файл .htaccess
Вариант для кодировки UTF8:
AddDefaultCharset utf-8
AddCharset utf-8 *
<IfModule mod_charset.c>
CharsetSourceEnc utf-8
CharsetDefault utf-8
</IfModule>
Вариант для кодировки Windows-1251:
AddDefaultCharset windows-1251
AddCharset windows-1251 *
<IfModule mod_charset.c>
CharsetSourceEnc windows-1251
CharsetDefault windows-1251
</IfModule>
3) Не забываем про кодировку самих файлов. Если у вас нужная кодировка в базе, нужная кодировка в заголовке, то это не значит, что у вас нужная кодировка файлов.
Кодировки файлов меняю, обычно, через notepad++:
windows-1251 -> ANSII
utf-8 -> UTF-8 без BOM
  • 0

#10 phpuser

phpuser
  • Пользователь
  • 520 сообщений
  • Репутация: 8

Отправлено 20 Апрель 2010 - 21:38

phpuser,
1) Попробуйте локализовать как я уже сказал выше.


ZIT по подробней куда и перед чем вставлять код локализации. Я этого не делал ни разу.
  • 0
Вникаю в тему создания сайтов...


robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Оформление форума – IPBSkins.ru