0

Доброго времени суток! встала задача перенести небольшой проект с php+mysql на iis 8+mssql,уткнулся в стену со следующей строчкой :

while($myrow = mysql_fetch_assoc($result))
            {           
            if ($myrow['mesto'] != $ip_user)
                {
                $mesto = $myrow['mesto'];
                echo '<option value="'.$mesto.'">'.$mesto.'</option>';
                };
            };  

Переделал в

while($myrow = sqlsrv_fetch_array($result,SQLSRV_FETCH_ASSOC))
            {           
            if ($myrow['mesto'] != $ip_user)
                {
                $mesto = $myrow['mesto'];
                echo '<option value="'.$mesto.'">'.$mesto.'</option>';
                };
            };

Но получаю в логе вот такую ошибку :

sqlsrv_fetch_array() expects parameter 1 to be resource, boolean given in

в строчке

while($myrow = sqlsrv_fetch_array($result,SQLSRV_FETCH_ASSOC))

Что я делаю не так ?

Madushko
  • 349
  • 1
    У вас запрос не выполнился и $result не является ресурсом, а равен false – rjhdby Jan 31 '17 at 12:54
  • Перед fetch проверьте количество полученных записей. А лучше переделать на PDO и больше никогда этим не заниматься. – ilyaplot Jan 31 '17 at 14:40
  • Да,ошибка в синтаксисе запроса. Спасибо! – Madushko Feb 02 '17 at 02:02

1 Answers1

0

Вы передаете в функцию sqlsrv_fetch_array $result -> значение true/false. А должны передавать объект выполненного запроса.

meylah15
  • 23
  • 5