Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Базы Данных > в MSSQL из PHP не вставляет строки UTF8


Автор: ide32 31.8.2012, 17:18
Здравствуйте, не нашел решения своего вопроса поэтому создал новую тему.

Есть база MSSQL, в ней организованы процедуры вставки данных.
В zende приконнектился к базе и данные (с тайпкастом) получаю нормально.

вот так:
Код

$this->_db->query("SELECT CAST(Name AS TEXT) as Name, CAST(Currency AS TEXT) as Currency, Cost, ImagePath  ...")->fetchAll();


теперь когда мне надо ЗАПИСАТЬ в бд данные я использую 

Код

$query = "EXEC [Description].[PAddingToDescriptionOfProducts]
                       {$post['Language']},
                       '{$post['Articul']}',
                       '{$post['Name']}',
                       '{$post['DescriptionShort']}',
                       '{$post['DescriptionLong']}',
                       '{$post['ImagePath']}'";
$this->_db->query($query);


Но в базу данных попадает (вместо кириллических символов) только "?????????? ???? ????????????", что обидно. Мне посоветовали "Сконвертируйте в win1251 перед записью".

И независимо от того делаю ли я
Код

 $query = iconv("utf-8", "cp1251", $query);

или 
Код

foreach ($post as $key => $val) {
            $new_post[$key] =  iconv("utf-8", "cp1251", $val);
        }


результат всеравно "?????????? ???? ????????????". (((( Не подскажете в какую сторону копать?

WEBсервер работает на Дебиане, PHP 5.3, Сервер MSSQL2012.

Автор: skyboy 3.9.2012, 00:09
а точно проблема в записи, а не в чтении/выводе?
напрямую в базу заглядывал(в обход РНР, через тулзы какие-то)?

Автор: ide32 3.9.2012, 12:10
Через Managment Studio 2012 заглядывал. ТО что "руками" добавлено то с кириллицей, а все что через PDO пришло "?????????? ??????????"

Автор: Sanchezzz 19.9.2012, 08:10
смотрите конфиг соединения в чем читает сервер в какой кодировке пишет итд.
Можете чтобы не мучатся установить через sql запрос тип соединения в какой кодировке работать писать читать итд.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)