SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 18.08.2010 16:32:30

Иван
Завсегдатай
Зарегистрирован: 07.08.2009
Сообщений: 48

А у меня выводятся крикозяблики из базы(я читал FAQ)....

Кодировка везде cp1251 нооооо выводятся почему то крикозяблики почему? я не пойму в инете искал ничего не нашел, может поможете?

Неактивен

 

#2 18.08.2010 16:33:38

Иван
Завсегдатай
Зарегистрирован: 07.08.2009
Сообщений: 48

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....




Enter password: ***
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 55
Server version: 5.0.67-community-nt MySQL Community Edition (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> showdatabases;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'showd
atabases'
at line 1
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| database2010       |
| mysql              |
| test               |
+--------------------+
4 rows in set (0.02 sec)

mysql> use database2010;
Database changed
mysql> show reate table karta;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'reate
 table karta'
at line 1
mysql> show reate table 'karta';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'reate
 table '
karta'' at line 1
mysql> show create table 'karta';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near ''kart
a'' at line 1
mysql> show create table karta;
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------+
| Table | Create Table






                                                                          |
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------+
| karta | CREATE TABLE `karta` (
  `id_Nomer` smallint(5) unsigned NOT NULL,
  `id_Date` text NOT NULL,
  `id_Time` text NOT NULL,
  `id_NomerIBM` text NOT NULL,
  `id_FPolizovatel` text NOT NULL,
  `id_IPolizovatel` text NOT NULL,
  `id_OPolizovatel` text NOT NULL,
  `id_OtdelPolizovatelja` text NOT NULL,
  `id_VidRabot` text NOT NULL,
  `id_Opicanie` text NOT NULL,
  `id_ChtoCdelano1` text,
  `id_Neicpravnocti` text NOT NULL,
  `id_ChtoCdelano2` text,
  `id_Prichina` text,
  `id_Podrobnocti` text,
  `id_KtoCdelal` text NOT NULL,
  `id_Vipolnenie` text NOT NULL,
  `id_put_file` tinytext
) ENGINE=InnoDB DEFAULT CHARSET=cp1251 |
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> show show variables lik '%char%';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'show
variables lik '
%char%'' at line 1
mysql> show variables lik '%char%';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'lik '
%char%'' at line 1
mysql> show variables like '%char%';
+--------------------------+--------------------------------------------+
| Variable_name            | Value                                      |
+--------------------------+--------------------------------------------+
| character_set_client     | latin1                                     |
| character_set_connection | latin1                                     |
| character_set_database   | cp1251                                     |
| character_set_filesystem | binary                                     |
| character_set_results    | latin1                                     |
| character_set_server     | cp1251                                     |
| character_set_system     | utf8                                       |
| character_sets_dir       | C:\Server\MySQL Server 5.0\share\charsets\ |
+--------------------------+--------------------------------------------+
8 rows in set (0.00 sec)

mysql> set names cp1251;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like '%char%';
+--------------------------+--------------------------------------------+
| Variable_name            | Value                                      |
+--------------------------+--------------------------------------------+
| character_set_client     | cp1251                                     |
| character_set_connection | cp1251                                     |
| character_set_database   | cp1251                                     |
| character_set_filesystem | binary                                     |
| character_set_results    | cp1251                                     |
| character_set_server     | cp1251                                     |
| character_set_system     | utf8                                       |
| character_sets_dir       | C:\Server\MySQL Server 5.0\share\charsets\ |
+--------------------------+--------------------------------------------+
8 rows in set (0.00 sec)

mysql> show create table karta;
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------+
| Table | Create Table






                                                                          |
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------+
| karta | CREATE TABLE `karta` (
  `id_Nomer` smallint(5) unsigned NOT NULL,
  `id_Date` text NOT NULL,
  `id_Time` text NOT NULL,
  `id_NomerIBM` text NOT NULL,
  `id_FPolizovatel` text NOT NULL,
  `id_IPolizovatel` text NOT NULL,
  `id_OPolizovatel` text NOT NULL,
  `id_OtdelPolizovatelja` text NOT NULL,
  `id_VidRabot` text NOT NULL,
  `id_Opicanie` text NOT NULL,
  `id_ChtoCdelano1` text,
  `id_Neicpravnocti` text NOT NULL,
  `id_ChtoCdelano2` text,
  `id_Prichina` text,
  `id_Podrobnocti` text,
  `id_KtoCdelal` text NOT NULL,
  `id_Vipolnenie` text NOT NULL,
  `id_put_file` tinytext
) ENGINE=InnoDB DEFAULT CHARSET=cp1251 |
+-------+-----------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>












 





не помогает...

Неактивен

 

#3 19.08.2010 13:32:01

Neval
Гуру
Откуда: Киев
Зарегистрирован: 11.03.2008
Сообщений: 449

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

А SET NAMES cp1251 после коннекта выполняете?


Человек без чувства юмора - не серьёзный человек wink

Неактивен

 

#4 19.08.2010 13:44:46

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

Ну и надо понимать, что если у Вас виндовый терминал, то в нем кодировка cp866.

Неактивен

 

#5 19.08.2010 14:48:01

Иван
Завсегдатай
Зарегистрирован: 07.08.2009
Сообщений: 48

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

что вы говорите??? я не понимаю??? что мне надо сделать??? я обычный php программист эникейщик...

Неактивен

 

#6 19.08.2010 15:23:37

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

Представьте, что Вы пришли в незнакомую китайскую компанию. Там все люди
говорят по умолчанию на китайском (но умеют говорить и на других языках).
Вы приходите и сообщаете всем, что Вы тоже говорите на китайском. Но при
этом для Вас их речь продолжает оставаться кракозяблами — ведь Вы не знаете
китайского (если знаете — подставьте в предыдущем тексте хинди / иврит / что
не знаете wink ).

Вот нужно прийти и сказать, что вы говорите по-русски. И тогда китайцы будут
общаться с Вами понятными русскими буквами.

Применительно к Вашему случаю — у Вас терминал работает в cp866. Если Вы
скажете MySQL, что он работает в cp1251 — Вы будете получать кракозяблы.
Потому что Вы пытаетесь обмануть MySQL, а в действительности обманываете
себя smile

Неактивен

 

#7 19.08.2010 15:36:36

Иван
Завсегдатай
Зарегистрирован: 07.08.2009
Сообщений: 48

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

ну хорошо и что делать? в php все время перед началом транзацкии перед записью короче в mysql вбивать со стороны клиента set names cp1251 получается так?

Неактивен

 

#8 19.08.2010 16:03:54

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

Да, после соединения выполнять SET NAMES <ожидаемая кодировка>.

Неактивен

 

#9 19.08.2010 16:25:57

Иван
Завсегдатай
Зарегистрирован: 07.08.2009
Сообщений: 48

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

не помогает
вот кусок кода


    $link = mysqli_connect("localhost", "root", "***<img src="img/smilies/wink.png" width="15" height="15" alt="wink" />", "DataBase2010");
    //проверка на ошибку
    if(!link) {
        $mysql_error = "Ошибка подключения: " . mysqli_connect_error();
        die($mysql_error);
        }
       
    mysql_query("set CHARACTER SET windows-1251");
    mysql_query("SET NAMES cp1251");
    echo "<br>!кодировка произошла!<br>";


 

Неактивен

 

#10 19.08.2010 16:40:34

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

Клевый пароль wink

Будь я на месте PHP — я бы обиделся и с Вами вообще не разговаривал smile Вы
соединяетесь через mysqli, а запросы шлете через mysql_query.

Неактивен

 

#11 19.08.2010 16:55:45

Иван
Завсегдатай
Зарегистрирован: 07.08.2009
Сообщений: 48

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

вапвиавмие3к4п34пу....))))

вот запрос все равно не работет)



    $link = mysqli_connect("localhost", "root", "*************", "DataBase2010");
    //проверка на ошибку
    if(!link) {
        $mysql_error = "Ошибка подключения: " . mysqli_connect_error();
        die($mysql_error);
        }
       
    mysqli_query($link,"set CHARACTER SET windows-1251");
    mysqli_query($link,"SET NAMES cp1251");
    echo "<br>!кодировка произошла!<br>";
    $result = mysqli_query($link, $add_query);
       




 

Неактивен

 

#12 19.08.2010 17:04:18

Иван
Завсегдатай
Зарегистрирован: 07.08.2009
Сообщений: 48

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

уже и так сделал все равно не работает....





    $link = mysqli_connect("localhost", "root", "************************************", "DataBase2010");
    //проверка на ошибку
    if(!link) {
        $mysql_error = "Ошибка подключения: " . mysqli_connect_error();
        die($mysql_error);
        }
       
     $result = mysqli_query($link,"set CHARACTER SET cp1251");
        if(!$result) {
        $errno = mysqli_errno($link);
        $error = mysqli_error($link);
        die("Ошибка 1 запроса: $error (код ошибки: $errno)");
        } else {
            echo "<br><br> ВНИМАНИЕ !!!! ДАННЫЕ ЗАПИСАНЫ<br><br>";
    }

   
    $result = mysqli_query($link,"SET NAMES cp1251");
   
    if(!$result) {
        $errno = mysqli_errno($link);
        $error = mysqli_error($link);
        die("Ошибка 2 запроса: $error (код ошибки: $errno)");
        } else {
            echo "<br><br> ВНИМАНИЕ !!!! ДАННЫЕ ЗАПИСАНЫ<br><br>";
    }



 





могу я расчитывать на помощь....

Неактивен

 

#13 19.08.2010 17:10:41

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

И выводит он — что?

P.S. Простого SET NAMES достаточно, первый SET не нужен.

Неактивен

 

#14 19.08.2010 17:16:47

Иван
Завсегдатай
Зарегистрирован: 07.08.2009
Сообщений: 48

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

вот

...
Результаты Дата
Вид работ
Кто сделал
Пользователь
Отдел
Статус
Действия

2010.08.19
Замена картриджа
Горшкова М.Г.


нет
 





2010.08.19
Замена картриджа
Горшкова М.Г.


нет
 





2010.08.19
Замена картриджа
Горшкова М.Г.


нет
 





2010.08.19
Замена картриджа
Горшкова М.Г.


нет
 





2010.08.19
Замена картриджа
Горшкова М.Г.


нет
 





2010.08.19
Замена картриджа
Горшкова М.Г.


нет
 





2010.08.19
Замена картриджа
Горшкова М.Г.


нет
 





2010.08.19
Замена картриджа
Горшкова М.Г.
Суханов В.И. Иван Владимирович т.н. 3368,(ОИТО)
йцуа
нет
 





2010.08.19
Замена картриджа
Горшкова М.Г.


нет
 





2010.08.18
Замена картриджа
Горшкова М.Г.


нет

Неактивен

 

#15 19.08.2010 17:47:02

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

Аха, данные лежат в таблице в UTF8, а написано, что они в cp1251 smile

http://sqlinfo.ru/articles/info/5.html — в статье описывается решение проблемы.

Неактивен

 

#16 20.08.2010 09:58:27

Иван
Завсегдатай
Зарегистрирован: 07.08.2009
Сообщений: 48

Re: А у меня выводятся крикозяблики из базы(я читал FAQ)....

я все понял я переделал все в utf8 и у меня перестали возникать проблемы... доктор спасибо)


чесслово спасибо - выручили

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson