Помогите ламеру c MySQL и кодировками)

djdiplomat
На сайте с 05.08.2009
Offline
136
731

Воюю я с дэнвером.

Короче фигня такая: банальный код

$db = mysql_connect ('localhost','root',''); // Соединяемся с БД
mysql_select_db('find',$db);
mysql_query("set @@character_set_client='utf-8'");
mysql_query("INSERT INTO nomera (nomer, ostanovki) VALUES ('77','Рынок ')");

приводит к тому, что в БД кракозяблы вместо русских букв.

Пробовал писать mysql_query('SET character_set_database = cp1251');та же фигня.

Пробовал читать тут http://www.lissyara.su/articles/freebsd/www/mysql_charsets/ (завис окончательно)

на запрос SHOW VARIABLES LIKE "char%"

в майадмин дает

character_set cp1251

character_sets latin1 big5 czech euc_kr gb2312 gbk sjis tis620 ujis dec8 dos german1 hp8 koi8_ru latin2 swe7 usa7 cp1251 danish hebrew win1251 estonia hungarian koi8_ukr win1251ukr greek win1250 croat cp1257 latin5

Как я понял в моей БД кодировка latin1, но че блин с ней делать?

VertuOzz
На сайте с 20.07.2010
Offline
123
#1
djdiplomat:
Как я понял в моей БД кодировка latin1, но че блин с ней делать?

ALTER DATABASE `database` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci. Дальше по ситуации

Ezekiel
На сайте с 11.08.2010
Offline
28
#2

SET NAMES 'utf-8'

---------- Добавлено 23.06.2012 в 00:16 ----------

A SET NAMES 'x' statement is equivalent to these three statements:

SET character_set_client = x;

SET character_set_results = x;

SET character_set_connection = x;

Обмен WebMoney (http://bit.ly/kqBOlV) Продам инвайт на Хабр (http://www.plati.ru/asp/pay.asp?idd=1529255)
E
На сайте с 21.09.2009
Offline
283
#3
djdiplomat:
Воюю я с дэнвером.
Короче фигня такая: банальный код
$db = mysql_connect ('localhost','root',''); // Соединяемся с БД

mysql_select_db('find',$db);
mysql_query("set @@character_set_client='utf-8'");
mysql_query("INSERT INTO nomera (nomer, ostanovki) VALUES ('77','Рынок ')");


приводит к тому, что в БД кракозяблы вместо русских букв.
Пробовал писать mysql_query('SET character_set_database = cp1251');та же фигня.

Пробовал читать тут http://www.lissyara.su/articles/freebsd/www/mysql_charsets/ (завис окончательно)

на запрос SHOW VARIABLES LIKE "char%"

в майадмин дает

character_set cp1251
character_sets latin1 big5 czech euc_kr gb2312 gbk sjis tis620 ujis dec8 dos german1 hp8 koi8_ru latin2 swe7 usa7 cp1251 danish hebrew win1251 estonia hungarian koi8_ukr win1251ukr greek win1250 croat cp1257 latin5

Как я понял в моей БД кодировка latin1, но че блин с ней делать?

третью строчку скрипта замени на

@mysql_query("SET NAMES 'utf8'");

в латин тоже можно работать но нужно на странице вывода для утф8 указать хеадеры

<?php

header('Content-Type: text/html; charset=utf-8');

?>

LEOnidUKG
На сайте с 25.11.2006
Offline
1748
#4

Хосподи, в какой кодировке то файл в котором написана строчка:

mysql_query("INSERT INTO nomera (nomer, ostanovki) VALUES ('77','Рынок ')");

???

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
vlad00777
На сайте с 24.12.2009
Offline
119
#5

Нужно что бы было соответствие кодировок скрипта и mysql.

У меня стоит 1251, а в phpmyadmin cp 1251 general ci. Вам нужно сменить с latin на 1251, если вы хотите использовать ее.

---------- Добавлено 23.06.2012 в 13:37 ----------

Или сделать как написал VertuOzz, и работать в utf8.

P.s этот запрос нужно выполнить в phpmyadmin.

Верстка. Качественно! Адаптивная, резиновая, с параллаксом и прочими плюшками. В ЛС.
djdiplomat
На сайте с 05.08.2009
Offline
136
#6

Имя моей БД find.

Я ввел в денвере запрос и получил такую ошибку:


SQL-запрос :

ALTER DATABASE `find` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

Ответ MySQL:
#1064 - You have an error in your SQL syntax near 'DATABASE `find` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci' at line 1

Хосподи, в какой кодировке то файл в котором написана строчка:

Ну в самой пхп стнанице написано

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

А сам материла создаю в дэнвере не русифицированном.

C
На сайте с 04.02.2005
Offline
277
#7

header('Content-Type: text/html;charset=UTF-8');

или в .htaccess

AddDefaultCharset UTF-8

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий