- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Приветствую всех друзья! Вчера столкнулся с необъяснимым. Написал веб-страницу на php, сохранил её и указал в ней кодировку UTF8 ( примерно так ......charset=utf-8 ) , написал функцию для добавления текста в базу MYSQL (примерно так: добавить в базу в поле "city" значение 'Москва') и заодно прописал вывод переменой city на экран(примерно так echo $city; )
В таблице MYSQL для поля "city" указал кодировку " utf8_general_ci ".
Отправляю в базу текст в кодировке utf8, а в базу записываются крякозябры, как-будто неверная кодировака !!! При том что на экран все выводится правильно.
Если текст латинскими буквами, типа 'Moskva' добавляется нормально.
На сервере по умолчанию UTF 8.
Друзья, в чем может быть проблема !!!??? :(:(
указал в ней кодировку UTF8
Что это значит в данном конкретном случае?
В какой кодировке сохранён сам php-файл?
p.s. Приветствуем и вас на форуме :)
Что это значит в данном конкретном случае?
В какой кодировке сохранён сам php-файл?
p.s. Приветствуем и вас на форуме :)
Спасибо за отклик !! Сохранил файл *.php в utf 8 и в нем указал <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
rustyle, посмотрите вот здесь http://phpfaq.ru/charset - хороший сборник советов по проблемам с кодировкой в mysql.
В таблице MYSQL для поля "city" указал кодировку " utf8_general_ci ".
Отправляю в базу текст в кодировке utf8, а в базу записываются крякозябры, как-будто неверная кодировака !!! При том что на экран все выводится правильно.
А где вы смотрите что в базе? Может проблема отнюдь не в сервере? :-)
Друзья, в чем может быть проблема !!!??? :(:(
Потому что у Вас все перепуталось.
MySQL может получать данные в одной кодировке, хранить - в другой, а отдавать - в третьей. И что там настроено по дефолту - доподлинно известно лишь одному MySQL-ю.
И всё это не имеет никакого отношения к кодировке страницы, указываемой в <meta http-equiv="Content-Type" content="text/html; charset=utf-8">, но при нестыковке - тоже будут кракозябры, уже при отображении полученных данных.
Во первых, если вы пишите ПХП, вывести мета-тэг определяющий кодировку недостаточно.. Это корректно работает только с статичными ХТМЛ страницами. Используйте вот такую конструкцию, тогда браузер будет 100% знать, что кодировка UTF-8:
header('Content-type: text/html; charset=utf-8');.Во вторых редактируйте ПХП файл не блокнотом, а какой-нибудь программой, которая умеет сохранять файл в различных кодировках.. Я пользуюсь Edit Plus - небольшая, быстрая и очень гибко настраиваемая программа.
В третьих перед обращением в базу данных, ей нужно дать понять, что работать мы собираемся именно в UTF-8, потому как сказал
MySQL может получать данные в одной кодировке, хранить - в другой, а отдавать - в третьей. И что там настроено по дефолту - доподлинно известно лишь одному MySQL-ю.
Для этого, после соединения с базой пишем:
mysql_query('SET NAMES utf8');Конечно же соединение с базой смотрите и добавляйте кодировку - mysql_query('SET NAMES utf8');
Спасибо всем за ответы !!!!! Отдельное "viktoris" , "ParserYa" , "Dreammaker" ,
Все решилось банальным добавлением строчки:
mysql_query('SET NAMES utf8');
С UTF8 в базах еще не сталкивался !!!