|
|
|
| возникает ошибка mysql_error | |
|
|
|
|
|
|
|
для: rodmial
(25.05.2013 в 17:56)
| | разбирайтесь с кодировками, таблицы БД , соединения с БД и самого файла скрипта. | |
|
|
|
|
|
|
|
для: rodmial
(25.05.2013 в 17:56)
| | В какой кодировке текст, который вы помещаете в базу данных?
В какой кодировке таблицы базы данных? | |
|
|
|
|
|
|
|
для: cheops
(25.05.2013 в 23:45)
| | windows1251, cp1251 | |
|
|
|
|
|
|
|
для: rodmial
(26.05.2013 в 08:25)
| | покажите часть кода отвечающую за соединение с БД ну и сам инсерт покажите | |
|
|
|
|
|
|
|
для: Valick
(26.05.2013 в 08:27)
| |
$mysql_host="localhost";
$mysql_login="root";
$mysql_pass="";
$mysql_bd="mybd1";
$mysql_table="tbl_gb";
$dbcnx=@mysql_connect($mysql_host,$mysql_login,$mysql_pass);
if(!$dbcnx){echo "Ошибка: Нет доступа к серверу mysql";exit();}
$db=@mysql_select_db($mysql_bd,$dbcnx);
if(!$db){echo "Ошибка: Нет доступа к базе данных mysql";exit();}
if(!mysql_query("create table if not exists
$mysql_table(id_mess int(11) auto_increment primary key,
user varchar(20),
email varchar(20),
mess varchar(255)) engine=myisam charset cp1251")){
echo "Ошибка: Невозможно создать таблицу.";exit();
}
$user_name=mysql_real_escape_string(@$_POST['user_name']);
$user_email=mysql_real_escape_string(@$_POST['user_email']);
$user_mess=mysql_real_escape_string(@$_POST['user_mess']);
if(strlen($user_name) || strlen($user_email) || strlen($user_mess)){
if(check_name($user_name) && check_email($user_email) && check_mess($user_mess)){
if(mysql_query("insert $mysql_table values (0,'$user_name','$user_email','$user_mess')")){
|
| |
|
|
|
|
|
|
|
для: rodmial
(26.05.2013 в 10:41)
| | > возникает ошибка mysql_error
В таких случаях лучше сразу показывать полный текст ошибки и код, ее вызывающий. Получили бы ответ в первом же сообщении.
Ошибка в синтаксисе:
insert INTO $mysql_table values (0,'$user_name','$user_email','$user_mess')
|
| |
|
|
|
|
|
|
|
для: Sfinks
(26.05.2013 в 13:44)
| | что касается слова INTO, то оно необязательное.
тем более что набранное латинницей вставляется нормально.
а сообщение об ошибке вот такого типа:
Incorrect string value: '\xF1\xEE\xEE\xE1\xF9\xE5...' for column 'mess' at row 1 | |
|
|
|
|
|
|
|
для: rodmial
(26.05.2013 в 10:41)
| | Сразу после установки соединения, настройте кодировку соединения при помощи запроса
...
mysql_query("SET NAMES cp1251");
...
|
| |
|
|
|
|
|
|
|
для: cheops
(26.05.2013 в 20:01)
| | заработало. спасибо вам большое. | |
|
|
|
|
|
|
|
для: rodmial
(26.05.2013 в 20:41)
| | заработало, но не совсем. хоть ошибки и не возникает, вместо русских букв вставляется черт знает что. | |
|
|
|
|
|
|
|
для: rodmial
(27.05.2013 в 14:20)
| | А HTML-страница, с которой отправляются данные для вставки в какой кодировке? | |
|
|
|
|
|
|
|
для: cheops
(27.05.2013 в 21:24)
| | windows-1251
mysql 5.5.30
указание кодировки для столбца делу не помогло. | |
|
|
|
|
|
|
|
для: rodmial
(28.05.2013 в 13:15)
| | >вместо русских букв вставляется черт знает что.
А как выглядит искаженный текст? | |
|
|
|
|
|
|
|
для: cheops
(28.05.2013 в 22:07)
| | вот - сообщение
слушайте. до меня дошло. у меня ведь используется ajax. там ведь utf-8.
простите пожалуйста. вопрос снят. | |
|
|
|
|
|
|
|
для: rodmial
(29.05.2013 в 11:45)
| | Выглядит как Windows-1251, который пытаются читать в кодировке UTF-8
Вы через браузер результаты смотрите? Посмотрите какая кодировка выставлена в самом браузере? | |
|
|
|
|
|
|
|
для: cheops
(29.05.2013 в 21:24)
| | да нет, в браузере Windows-1251.
спасибо вам большое. | |
|
|
|