Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.58/256: Рейтинг темы: голосов - 256, средняя оценка - 4.58
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 40

Русские буквы в MySQL не пишутся!!!??

29.01.2010, 10:39. Показов 51333. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
День добрый!!!

Проблема заключается в следующем:
При добавлении новой записи русскими буквами через браузер ....эта запись не вносится в БД MySQL, но при добавлении записи на английском она вносится....В чем проблема??

В my.ini прописано:

В разделе [mysql]

#default-character-set=cp1251

В разделе [mysqld]

default-character-set=cp1251.

Заранее Спасибо!!!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.01.2010, 10:39
Ответы с готовыми решениями:

Русские буквы в mysql
Да да, снова какой-то баНан который не умеет пользоваться поиском. И собственно вопрос. Как добавить в БД русские символы. Сейчас вместо...

русские буквы + mysql
Стоит на хостинге сайтик. Я его на локу перенес и пару дней у себя его делал и сразу тестил. Вот сегодня перенес на хостинг вместе с...

Не ищет русские слова/буквы
Всем привет,делал поиск для сайта все хорошо работает, кроме того что он отказывается искать именно русские запросы и выдает ошибку на...

22
 Аватар для GalaX
701 / 573 / 59
Регистрация: 18.11.2008
Сообщений: 2,147
29.01.2010, 11:09
в каких кодировках:
1) таблица в бд
2) пхп-скрипт
3) данные показываемые браузеру

?

зы: все должно быть одинаково
1
Айхрень...
 Аватар для Paulie
306 / 176 / 7
Регистрация: 02.06.2009
Сообщений: 1,077
29.01.2010, 11:12
попробуй после подключения
mysql_query("SET NAMES `CP1251`");
а также хедер header("content-type=text/html; charset=cp1251"); //я точно не помню какая кодировка в хедере указывается, может быть и windows-1251

Далее проверь таблицы в БД - какое там сравнение стоит и кодировка полей, должна быть также cp1251
2
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 40
29.01.2010, 13:40  [ТС]
написала после подключения mysql_query("SET NAMES `CP1251`");

теперь в БД вместо русских букв вопросительные знаки.....)))

В MySQL проверила кодировку...написано cp1251
Вопрос: А header где писать???

P.S. Здесь не надо ставить одинарные кавычки mysql_query("SET NAMES СP1251;");
0
Айхрень...
 Аватар для Paulie
306 / 176 / 7
Регистрация: 02.06.2009
Сообщений: 1,077
29.01.2010, 13:50
Цитата Сообщение от natsuho10 Посмотреть сообщение
Вопрос: А header где писать???
Я обычно пишу вначале документа, но перед выводом чего-либо в браузер.


Цитата Сообщение от natsuho10 Посмотреть сообщение
P.S. Здесь не надо ставить одинарные кавычки mysql_query("SET NAMES СP1251;");
Позвольте, леди, а там и не кавычки Там ` - это на букве Ё такая вещь! Как называется - и не скажу, не знаю.


Цитата Сообщение от natsuho10 Посмотреть сообщение
теперь в БД вместо русских букв вопросительные знаки
Проверяйте, и ещё раз проверяйте кодировки, везде дложна быть одна, и почему Вы используете cp1251? Ведь это только русская кириллическая кодировка. Ну да ладно, это риторический вопрос!
1
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 40
29.01.2010, 15:38  [ТС]
Я уже проверяла кодировки ...в майскуле писала show create table НАЗВНИЕ_ТАБЛИЦЫ;

В my.ini я уже писала, что стоит cp1251...

А какую Вы посоветуете кодировку поставить??
0
 Аватар для Ceran
172 / 101 / 10
Регистрация: 22.02.2009
Сообщений: 440
29.01.2010, 20:59
Посмотри через мой профиль. Я уже рассказывал как-то про кодировки в мускуле.
1
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 40
01.02.2010, 11:49  [ТС]
Теперь у меня вабще ни русские ни английские данные не вносятся в БД MySQL

Вот код подключения к MySQL:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// mysql настройки
$db_host = "localhost";
$db_user = "root";
$db_pass = "123";
$db_name = "karta";
 
// подключение к mysql
@ $db = mysql_pconnect($db_host , $db_user, $db_pass);
 
// переход к базе данных
mysql_select_db($db_name);
 
$query = "INSERT INTO dannie VALUES(NULL,'".$familia."','".$name."','".$otchestvo."','".$data."');";
 
$result = mysql_query($query);
 
mysql_close($db); // отключаемся
0
 Аватар для GalaX
701 / 573 / 59
Регистрация: 18.11.2008
Сообщений: 2,147
01.02.2010, 12:16
вставь после mysql_query()
PHP
1
echo mysql_error();
посмотрим какую ошибку выдаст
1
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 40
01.02.2010, 12:42  [ТС]
ничего не написал....
0
0 / 0 / 0
Регистрация: 12.02.2010
Сообщений: 3
12.02.2010, 13:14
Кто-то подсказал mysql_query("SET NAMES 'cp1251'"); Все зараболтало, огромное спасибо
0
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 40
12.02.2010, 17:23  [ТС]
У меня прописано такое....но все равно не работает.....данные не выводятся....не русские, не английские....просто пустые ячейки остаются((
0
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
12.02.2010, 17:38
а естли вот так

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// mysql настройки
$db_host = "localhost";
$db_user = "root";
$db_pass = "123";
$db_name = "karta";
 
// подключение к mysql
@ $db = mysql_pconnect($db_host , $db_user, $db_pass);
 
// переход к базе данных
mysql_select_db($db_name);
 
$query = "INSERT INTO dannie (id,familiya,name,otchestvo,data) VALUES (NULL,'$familia','$name','$otchestvo','$data')";
 
$result = mysql_query($query);
 
mysql_close($db); // отключаемся
0
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 40
13.02.2010, 10:13  [ТС]
все равно пусто((
0
 Аватар для SunDrop
390 / 229 / 11
Регистрация: 09.12.2009
Сообщений: 668
13.02.2010, 19:32
Цитата Сообщение от natsuho10 Посмотреть сообщение
все равно пусто((
'$familia','$name','$otchestvo','$data' - переменные заполнены?
Автоинкрементное поле вставляется?
echo $query и вполнить непосредственно в консоли mysql, что будет?
0
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 40
14.02.2010, 10:06  [ТС]
1. переменные заполнены
2. поле id - auto_increment
3. echo $query выводит INSERT INTO dannie (id,familia,name,otchestvo,data) VALUES (NULL,'','','','')
4. если INSERT выполнять непосредственно в консоли mysql, то данные вносятся
0
 Аватар для SunDrop
390 / 229 / 11
Регистрация: 09.12.2009
Сообщений: 668
15.02.2010, 02:12
Цитата Сообщение от natsuho10 Посмотреть сообщение
3. echo $query выводит INSERT INTO dannie (id,familia,name,otchestvo,data) VALUES (NULL,'','','','')
Я правильно понимаю, что ты хотел сказать этой строчкой: переменная $query содержит пустые данные?
Это значит, что '$familia','$name','$otchestvo','$data' или неопределены, или пустые.
0
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 40
15.02.2010, 06:47  [ТС]
Эти переменные передаются с помощью сессии..Вот код
PHP
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
<?php
session_start();
?>
 
<html>
<body>
 
<H1 align="center"><B><FONT SIZE=6>КАРТОЧКА АБИТУРИЕНТА</FONT></B></H1>
 
<P>   
<TABLE WIDTH = 1000>
</P>
 
<?php
$fak=$_POST['fak'];
$spez=$_POST['spez'];
 
$familia=$_POST['familia'];
$name=$_POST['name'];
$otchestvo=$_POST['otchestvo'];
$data=$_POST['data'];
$mestorozh=$_POST['mestorozh'];
$document=$_POST['document'];
$seria=$_POST['seria'];
$number=$_POST['number'];
$kem=$_POST['kem'];
$kogda=$_POST['kogda'];
$grazhdan=$_POST['grazhdan'];
$pol=$_POST['pol'];
$email=$_POST['email'];
 
$svedenia=$_POST['svedenia'];
$language=$_POST['language'];
$national=$_POST['national'];
$education=$_POST['education'];
$danneduc=$_POST['danneduc'];
$sozpol=$_POST['sozpol'];
$stazhgener=$_POST['stazhgener'];
$stazhspez=$_POST['stazhspez'];
$voen=$_POST['voen'];
$mestozhitel=$_POST['mestozhitel'];
$vnekon=$_POST['vnekon'];
$dogovor=$_POST['dogovor'];
$uspehi=$_POST['uspehi'];
$deti=$_POST['deti'];
$mother=$_POST['mother'];
$father=$_POST['father'];
$kurci=$_POST['kurci'];
$sport=$_POST['sport'];
 
 
print("Факультет:  ");
switch($fak) 
{
   case 1: 
      print("Математический <br><br>");
   break;
   case 2: 
      print("Филологический <br><br>");
   break;
   case 3:
      print("Педагогического и художественного образования<br><br>");
   break;
   case 4: 
      print("Исторический <br><br>");
   break;
   case 5:
      print("Дошкольного образования<br><br>");
   case 6: 
      print("Иностранных языков<br><br>"); 
   case 7: 
      print("Физический <br><br>");
   case 8: 
      print("Социальных и информационных технологий <br><br>");
   default:      
      print("default");
}
 
print("Специальность:  ");print("$spez<br><br>");
 
echo $_SESSION['familia'];
print("<br>"); echo $_SESSION['name'];
print("<br>"); echo $_SESSION['otchestvo'];
print("<br>"); echo $_SESSION['data'];
print("<br>"); echo $_SESSION['mestorozh'];
print("<br>"); echo $_SESSION['document'];
print("<br>"); echo $_SESSION['seria'];
print("<br>"); echo $_SESSION['number'];
print("<br>"); echo $_SESSION['kem'];
print("<br>"); echo $_SESSION['kogda'];
print("<br>"); echo $_SESSION['grazhdan'];
print("<br>Пол:  ");  echo $_SESSION['pol'];
print("<br>"); echo $_SESSION['email'];
 
print("$svedenia<br><br>");
print("Иностранный язык:  "); print("$language<br><br>");
 
 
print("Национальность:  ");
switch($national)
{
   case 1:
      print("Русский <br><br>"); 
   break;
   case 2:
      print("Удмурт <br><br>");
   break;
   case 3:
      print("Татар <br><br>");
   break;
   case 4:
      print("Другое <br><br>");
   break;
   default:      
      print("default");
}
 
print("$education<br><br>");
print("$danneduc<br><br>");
print("$sozpol<br><br>");
print("$stazhgener<br><br>");
print("$stazhspez<br><br>");
print("$voen<br><br>");
print("$mestozhitel<br><br>");
print("$vnekon<br><br>");
print("$dogovor<br><br>");
print("$uspehi<br><br>");
print("$deti<br><br>");
print("$mother<br><br>");
print("$father<br><br>");
print("Подготовительные курсы:  ");   print("$kurci<br><br>");
print("$sport<br><br>");
?>
 
<?php
$host="localhost"; // у большинства хостеров этот параметр именно такой 
$user="root"; //ваше имя для подключения к MySQL 
$pass="123"; // Ваш пароль для подключения к MySQL 
$bd_name="karta"; // Имя создаваемой базы данных 
 
 // Соединение с MySQL
$link = mysql_pconnect($host, $user, $pass);
   
// Выбор базы данных 
mysql_select_db ($bd_name); // Выбор базы данных 
  
//Устанавливаем кодировку   
mysql_query ("SET NAMES cp1251");
 
$query = "INSERT INTO dannie (id,familia,name,otchestvo,data) VALUES (NULL,'$familia','$name','$otchestvo','$data')";
 
echo $query;
 
$result = mysql_query($query);
 
 // Разрываем соединение с MySQL
mysql_close($link); 
?>
 
</TD></TR></TABLE></CENTER>
<INPUT TYPE="submit" VALUE="Далее"> 
 
</body>
</html>
0
 Аватар для SunDrop
390 / 229 / 11
Регистрация: 09.12.2009
Сообщений: 668
15.02.2010, 14:18
Цитата Сообщение от natsuho10 Посмотреть сообщение
Эти переменные передаются с помощью сессии..
Цитата Сообщение от natsuho10 Посмотреть сообщение
$familia=$_POST['familia'];
Цитата Сообщение от natsuho10 Посмотреть сообщение
echo $_SESSION['familia'];
Цитата Сообщение от natsuho10 Посмотреть сообщение
echo $query;
Еще раз:
1) С помощью сессии или постом в форму?
2) Что выводит echo $query;? Если пустой инсерт, который ты указал выше, то переменные не определены!
0
Программист
 Аватар для motakuji
107 / 111 / 9
Регистрация: 27.09.2009
Сообщений: 331
15.02.2010, 15:16
Цитата Сообщение от SunDrop Посмотреть сообщение
ще раз:
1) С помощью сессии или постом в форму?
SunDrop, ак у него же там видно,что переменная постом идёт.
natsuho10, Проверяй свою форму с которой идёт запрос.У тебя там проблемы.Других вариантов нет
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.02.2010, 15:16
Помогаю со студенческими работами здесь

Сайт не воспринимает русские буквы
Всем привет, у меня такой вопрос: при попытке создать тикет в поддержку на моем сайте, сайт не воспринимает русские буквы, то есть если...

Не добавляются русские слова в БД MySQL
Я сделал простой онлайн чат, на локальном сервере все великолепно работает. Когда я залилил этот чат на hostinger.ru то у меня возникли...

В myAdmin некорректно выводятся русские буквы
Когда создаю записи в БД через форму на сайте, а потом смотрю их в myAdmin, то вместо русских букв непонятные символы. Например слово...

Почему с базы данных, не выводит русские буквы?
Почему вместо слова, отображаются вопросики?

почему не работает запрос, когда в поле name русские буквы?
Доброо времени суток &lt;?php $db=mysql_connect(&quot;localhost&quot;, &quot;root&quot;, &quot;&quot;) or die(&quot;Ошибка&quot;); mysql_select_db(&quot;dbsoap&quot;, $db) or...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru