Проблема в том что на AZURE подключение к MSSQL либо odbc драйвер который уже устарел и его чисто как-то пытаются поддерживать либо через mssql_native драйвер.
На самом серваке все работает, отдельные тестовые файлы с подключением заработали даже через функции adodb (mssqlnative и odbc тоже)
PHP код:
$serverName = "tcp:----t";
$user = "---@--";
$pwd = "----";
$db = "---";
include('typo3/sysext/adodb/adodb/adodb-exceptions.inc.php');
include('typo3/sysext/adodb/adodb/adodb.inc.php');
try {
$DB = NewADOConnection('mssqlnative');
//$DB = NewADOConnection('mysql');
$DB->debug = true;
$DB->Connect($serverName , $user, $pwd, $db);
}
catch (exception $e) {
var_dump($e);
adodb_backtrace($e->gettrace());
}
$rst = $DB->Execute("SELECT GETDATE() AS today");
while ($array = $rst->FetchRow()) {
print_r($array);
}
$rs = $DB->Execute("select * from tttest trace");
while ($array = $rs->FetchRow()) {
print_r($array);
}
Но через Typo3 подключится не удавалось
PHP код:
/*
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['dbal']['handlerCfg'] = array (
'_DEFAULT' => array (
'type' => 'adodb',
'config' => array (
//'driver' => 'mssql',
'driver' => 'mssqlnative',
//'driver' => 'odbc_mssql',
'useNameQuote' => TRUE,
)
),
);
$GLOBALS['TYPO3_CONF_VARS']['DB']['username']='----';
$GLOBALS['TYPO3_CONF_VARS']['DB']['password']='----';
$GLOBALS['TYPO3_CONF_VARS']['DB']['host'] = '---';
$GLOBALS['TYPO3_CONF_VARS']['DB']['database']='----'; //is
$GLOBALS['TYPO3_CONF_VARS']['DB']['port'] = 1433;
# or configured in odbc handler
Typo3 6.2.10 установил сначала с mySQL установил через менеджера разришений dbal и adodb (в папке sysext). Конфигуратор typo3 их увидел и пытается подключится через dbal и указанный домен, но тут началось самое интересное. Драйвер mssqlnftive в упор не хочит подключатся, пришлось переписать час кода и вместо отдельных параметров засунусть строку подключения, но затем все упало так как не предусмотрена работа с avtoincrement primari key. odbc конект падает по другой причине, считает что odbc 64 битный а php 32 (хотя в тесте все работало нормально), пришлось также переписывать на строку подключения - ошибка та же.
Дальше разбираться не захотелось. Мой вывод dbal - устаревший, работать с ним крайне не желательно. odbc - устаревший, делать перспективный проект с ним - не желательно. ms_native проблемы с индексами, нужно ковырятся в коде что-то пачить переписывать, а это модификация ядра - нежелательно . Итого я решил что AZUR web service не самое удачное место для проектов под Typo3 тем более что лагает оно точно не из-за БД.