Jump to content
  • 0

проблема с кодировкой (php MySql и самого сайта)


linkan
 Share

Question

Доброго времени суток дорогие Гуру =)

Очень нужна ваша помощь.

Пред история:

Долго писал и управлял сайтом на связке Apach + phpmyadmin (той что ставится из сборки уроков от Евгения Попова ... который ruseller) всё было хорошо не знал бед.

здесь решил на новую систему поставить XAMPP со всеми причитающимися как новая версия Apach да и PHP и MySQl. большую часть мелких ошибочек удалось исправить ( в SQL файле старой базы менял 'TYPE=MyISAM' на ENGINE=MyISAM чтобы можно было завести старую базу в новый phpmyadmin, подбирал кодировку чтобы в phpmyadmin в базах русский текст отображался нормально. в итоге остановился на windows-1251.

НО ВОТ БЕДА... На сайте весь русский текст который берётся из базы данных отображается в виде вопросов (?????????).

КАК это возможно исправить?

пробовал даже в ручную самостоятельно вбивать бызы... не помогло(

Кто может растолковать решение данной проблемы начинающему?

если надо выложить код какой то .. то скажите какой. выложу.

И сопутствующий вопрос.

до этого на старом MySQL пользовался программой MySql-Font для занесения информации из таблиц exel в базу.

Сейчас эта прога выдаёт сплошные ошибки и постоянно виснет.

какую программу можете посоветовать для выполнения данной задачи?

Заранее всем благодарен=)

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

А вот это пробовали

mysql_set_charset("utf8",$conn);

после выбора базы данных?

Ну и надо, конечно же, чтобы кодировка совпадала с кодировкой страницы :-)

Понял где собака зарыта(

как я понял мне надо прописать все переменные в my.ini

вот к такому виду привести

character set client utf8

(Глобальное значение) cp1251

character set connection utf8

(Глобальное значение) cp1251

character set database cp1251

character set filesystem binary

character set results utf8

(Глобальное значение) cp1251

character set server cp1251

character set system utf8

collation connection utf8_general_ci

(Глобальное значение) cp1251_general_ci

collation database cp1251_general_ci

collation server cp1251_general_ci

а у меня счас в настройках творится следующее

character set client utf8

character set connection utf8

character set database utf8

character set filesystem binary

character set results utf8

character set server utf8

character set system utf8

collation connection utf8_general_ci

(Значение сессии) utf8_general_ci

collation database utf8_general_ci

collation server utf8_general_ci

вот пока что что у меня прописано и my.ini

## UTF 8 Settings
#init-connect=\'SET NAMES utf8\'
collation_server=utf8_general_ci
character_set_server=utf8
#skip-character-set-client-handshake
#character_sets-dir="L:/xampp/mysql/share/charsets"

если

меняю collation_server=utf8_general_ci на cp1251_unicode_ci MySQL вообще отказывается грузится(

Edited by linkan
Link to comment
Share on other sites

  • 0

Дело, скорее, в кодировке самих данных. Определите, в какой кодировке у вас данные и используйте ее как в запросах, так и на сайте. Имхо лучший вариант - это utf8 и в базе, и на сайте.

Link to comment
Share on other sites

  • 0

После подключения к базе пропишите у себя

mysql_client_encoding 

Вам вернёт кодировку соединения.

А кракозябры могут быть если у Вас страница в одной кодировке (или кодировка вообще не указана), а для соединения Вы указали другую кодировку - mysql_set_charset.

У меня как-то была подобная проблема - в базе было 1251, а страница в utf8, после использования mysql_set_charset всё стало отлично.....

Link to comment
Share on other sites

  • 0

После подключения к базе пропишите у себя

mysql_client_encoding 

Вам вернёт кодировку соединения.

А кракозябры могут быть если у Вас страница в одной кодировке (или кодировка вообще не указана), а для соединения Вы указали другую кодировку - mysql_set_charset.

У меня как-то была подобная проблема - в базе было 1251, а страница в utf8, после использования mysql_set_charset всё стало отлично.....

Спасибо но решил проблему чуть по другому.

просто прописал в my.ini

collation_server=cp1251_general_ci
character_set_server=cp1251

Кодировка сервера оставил как была UTF-8 Unicode (utf8)

Сопоставление кодировки соединения с MySQL выбрал как cp1251_general_ci

и всё заработало как надо=)

Тут тему cp-1251 vs utf-8 в mysql каждую неделю заново создают?

Если бы кто из модератеров сделал статейку об основных ошибках начинающих(с названием ... аля проблеммы с отображением базы или какими другими названиями.. которые обычно используют начинающие). думаю такие бы темы появлялись реже.

сам создал тему уже как последнюю инстанцию так как не мог 2 дня докумекать что от чего зависит... да и форумов начитался где профи объясняют что надо делать как равным себе а не как человеку у которого эта проблема первый раз приключилась.

Link to comment
Share on other sites

  • 0

Тут тему cp-1251 vs utf-8 в mysql каждую неделю заново создают?

Если бы кто из модератеров сделал статейку об основных ошибках начинающих(с названием ... аля проблеммы с отображением базы или какими другими названиями.. которые обычно используют начинающие). думаю такие бы темы появлялись реже.

сам создал тему уже как последнюю инстанцию так как не мог 2 дня докумекать что от чего зависит... да и форумов начитался где профи объясняют что надо делать как равным себе а не как человеку у которого эта проблема первый раз приключилась.

Они обычно любят людей посылать... в поиск по форуму.

У всех было в первый раз. Вы не один такой. И все ведь как-то решали ;)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy