Задать вопрос
@Ingbond

Как сменить кодировку используя mssql?

Добрый день.
Какие еще есть способы решения проблемы вывода знаков вопроса вместо кириллицы?
Использование exec("SET NAMES utf8") и exec("SET CHARACTER SET utf8") не помогает, данные по-прежнему остаются в формате ASCII.
Куда копать?
...
$dbh = new PDO("odbc:$data_source", $user, $password);
$dbh->exec("SET NAMES utf8");
$dbh->exec("SET CHARACTER SET utf8");
...
foreach ($dbh->query($sql) as $row) {
  echo mb_detect_encoding($row['Name1']);
  print $row['Name1'] . "\t";
}


Получаю: "ASCII???????? ASCII???????? ASCII?????????".
Использую Microsoft SQL.
  • Вопрос задан
  • 492 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
@Ingbond Автор вопроса
Проблема решилась использованием dblib вместо odbc
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
tomnolane
@tomnolane
профессиональный разработчик
mysqli_set_charset($connection, "utf8");

либо
SQLSRV_PHPTYPE_STRING('UTF-8')

смотрим
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы