после прочтения нескольких потоков, но я до сих пор не знаю, почему мой запрос не работает: ‘(. Он просто возвращает
sqlsrv_fetch_array() expects parameter 1 to be resource, boolean given
SQL Connect хорошо, потому что я могу запросить выбор
уже прочитал этот но нет решения для этого
Вот мой код
$ma_vt = '24110012A2140850';
$query = "{call dbo.Tondaulist(?,?,?,?,?,?)}";
$params = array(array('OL', SQLSRV_PARAM_IN),
array('01/02/2015', SQLSRV_PARAM_IN),
array('BPOL01', SQLSRV_PARAM_IN),
array('', SQLSRV_PARAM_IN),
array($ma_vt, SQLSRV_PARAM_INOUT),
array('1', SQLSRV_PARAM_IN)
);
$test = sqlsrv_query($conn, $query, $params);
if ($test === FALSE){
echo 'fail';
}
$arr = sqlsrv_fetch_array($test,SQLSRV_FETCH_ASSOC);
после часа попыток я изменил свой код следующим образом
$query = "{call dbo.Tondaulist(?,?,?,?,?,?)}";
$params = array(array('OL,'),
array('01/02/2015'),
array('BPOL01'),
array(''),
array('24110012A2140850'),
array('1')
);
$smtp = sqlsrv_prepare($conn, $query, $params);
if ($smtp === FALSE){
echo 'fail';die;
}
sqlsrv_execute($smtp);
while($row = sqlsrv_fetch_array($smtp)){
echo 'ello';
echo '<br />';
}
if( sqlsrv_fetch_array( $smtp ) === false ) {
die( print_r( sqlsrv_errors(), true));
теперь хранимая процедура запущена, но возвращается ошибка: активный результат для запроса не содержит полей.
Я запускаю SP в SQL Studio, и он возвращает 1 строку.
это параметры моей хранимой процедуры
Кто-нибудь знает, где я был не прав?
Задача ещё не решена.
Других решений пока нет …