|
|
|
| Есть следующий код:
<?php
$connect=@mysql_connect("localhost","root","");
if (!$connect) echo "Ошибка соединения с БД";
mysql_query("SET NAMES 'cp1251'");
$bd=@mysql_select_db("test",$connect);
if (!$bd) echo "Ошибка выбора БД";
mysql_query("INSERT INTO test2 VALUES ('0','Имя','Пароль')");
?>
|
MySQL стоит 5-й версии. Проблема в том что при попытке добавить в БД запись состоящей из русских букв приводит к ошибке и ничего в БД не добавляется.
Если же заменить запрос на добавление и добавлять латинсикие буквы (например mysql_query("INSERT INTO test2 VALUES ('0','Name','Pas')")) то всё проходит на ура. В чём может быть проблема? И как её устранить? | |
|
|
|
|
|
|
|
для: Максимыч
(02.08.2006 в 22:09)
| | Как выглядит сообщение об ошибке? | |
|
|
|
|
|
|
|
для: cheops
(02.08.2006 в 23:52)
| | Вроде сам разобрался. Оказывается при создании таблицы надо явно указывать кодировку полей Text. Делается это так:
CREATE TABLE 'test6' (
'id' SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
'user' TEXT CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL ,
'password' TEXT CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL
) TYPE = MYISAM ;
|
| |
|
|
|