Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 MS SQL выдаёт ????  [new]
botbot
Member

Откуда:
Сообщений: 23
Здравствуйте. При переезде на новый хостинг возникла проблема с базой данных. До этого всё где-то год работало на хостинге тех людей, которые написали сайт. На новом хостинге развернул их бекап базы, залил все скрипты. Но при вызове sqlsrv_query и попытке прочитать текстовое поле из базы (русский текст) выдаёт ??? "?????????????.
Проверил через HeidiSQL (клиент такой), в нём видны все таблицы, русский текст нормальный. Т.е. база на хостинге вроде правильная.
Пробовал перекодировку, например iconv("cp1251", "utf-8", $row_razdels["Title"]) - всё равно вопросики.
Как починить?

ЗЫ, для полноты картины, пример того, как там происходит подключение/запрос:
$serverName = "***";
$connectionInfo = array( "Database"=>"***","UID"=>"***","PWD"=>"***");
/* Connect using Windows Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
     echo "<b>Невозможно открыть базу данных<br>Необходимо провести диагностику БД<br></b>.\n";
     die( print_r( sqlsrv_errors(), true));
}
$q = "Select 
 ContentTypeID ,
 ContentType,
 (Select ContentType from ContentTypes where FileName='news.asp') as Razdel,
 Title,
 Keywords,
 Description
 from ContentTypes
where FileName='index.php'";
$result_razdels = sqlsrv_query($conn, $q);
while ($row_razdels = sqlsrv_fetch_array($result_razdels))
{	
  echo(iconv("cp1251", "utf-8", $row_razdels["Title"]));
  echo($row_razdels["Title"]);
}
4 фев 13, 18:26    [13874242]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL выдаёт ????  [new]
Маслов Андрей
Member

Откуда: Москва
Сообщений: 1164
botbot,

может быть это как-то поможет SET NAMES cp1251
5 фев 13, 18:59    [13880031]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL выдаёт ????  [new]
komrad
Member

Откуда:
Сообщений: 5252
Маслов Андрей
botbot,

может быть это как-то поможет SET NAMES cp1251

это "как-то поможет" в mysql, но не в сиквеле

set names
5 фев 13, 20:06    [13880337]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить