Доброго всем времени суток ув.
Кто в курсе, подскажите пожалуйста в чем может быть проблема?
Добавляю через постер записть в БД - фио, мыло, телефон. Почему-то кирилица отображается знаками вопроса, при отправке запроса через постер. В тоже время если отправить тот же запрос через WorkBench или php my admin то все проходит корректно. Раньше таких проблем не было.
Грешил с начала на кодировку, перепробовал все возможные конвертации - ни в какую! Вроде бы маленькая проблема, а уже второй день не могу победить.
База находится на хостинге reg.ru, таблица создавалась через php my admin хостинга. Кодировка таблицы utf8 - utf8_bin
Последняя версия 5го постера.
Кто в курсе, подскажите пожалуйста в чем может быть проблема?
Добавляю через постер записть в БД - фио, мыло, телефон. Почему-то кирилица отображается знаками вопроса, при отправке запроса через постер. В тоже время если отправить тот же запрос через WorkBench или php my admin то все проходит корректно. Раньше таких проблем не было.
Грешил с начала на кодировку, перепробовал все возможные конвертации - ни в какую! Вроде бы маленькая проблема, а уже второй день не могу победить.
База находится на хостинге reg.ru, таблица создавалась через php my admin хостинга. Кодировка таблицы utf8 - utf8_bin
Последняя версия 5го постера.
Код:
//mysql connect
string[] connect_data = new[] {
string.Format(@"server={0}",project.Variables["serv_mysql"].Value),
string.Format(@"user id={0}",project.Variables["user_mysql"].Value),
string.Format(@"password={0}",project.Variables["pass_mysql"].Value),
string.Format(@"database={0}",project.Variables["database_mysql"].Value),
string.Format(@"port={0}",project.Variables["port_mysql"].Value),
"persistsecurityinfo=True"
};
string data_time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
string connect_db = string.Join(";", connect_data);
string table_name = project.Variables["table_name"].Value;
string name = "Иван Иванов";
string phone = "+1111111111111111";
string email = "[email protected]";
//encoding
string content = name;
Encoding utf8 = Encoding.GetEncoding("UTF-8");
Encoding win1251 = Encoding.GetEncoding("Windows-1251");
byte[] win1251Bytes = utf8.GetBytes(content);
byte[] utf8Bytes = Encoding.Convert(win1251, utf8, win1251Bytes);
name = utf8.GetString(utf8Bytes);
//mysql
string SQL = string.Format("LOCK TABLES `{0}` WRITE;",table_name);
SQL += Environment.NewLine;
SQL += string.Format(@"INSERT INTO `{0}` (`name`, `email`, `phone`, `tour_visit`, `from_contacts`, `add_data`) VALUES ('{1}','{2}','{3}','{4}','{5}','{6}');",table_name, name, email, phone, "", "IK", data_time);
SQL += Environment.NewLine;
SQL += "UNLOCK TABLES;";
string resp = ZennoPoster.Db.ExecuteScalar(SQL, null, ZennoLab.InterfacesLibrary.Enums.Db.DbProvider.MySqlClient, connect_db, throwExceptions: true);
Последнее редактирование: