Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Базы Данных > Странное поведение mssql_connect


Автор: Сергей Плоткин 8.6.2007, 10:52
На локальной машине пишу скрипт, который подключается к MS SQL Server 2005 на удаленном компьютере.

Код

  $curlink=mssql_pconnect("ip-адрес сервера", "логин", "пароль");
  mssql_select_db("имя бд", $curlink);


И вот тут начинаются странности. Сначала скрипт работает нормально, но где-то минут через пять, после порядка 20-30 обновлений страницы (точное число не назову) PHP начинает выдавать сообщение, мол, "Warning: mssql_pconnect(): Unable to connect to server..." и т.д.

Причем сначала помогает обычный Refresh. Потом хуже. Нужно страничку обновить раза 3-4, чтобы снова произошло подключение к базе. А дальше, если еще много раз обновлять страницу, то ошибка выдается всегда и PHP упорно не хочет подключаться к БД, пока не перезагрузить Web-сервер.

Причем, сначала думал, что это из-за апача. Перешел на IIS - та же самая проблема. Может кто-нибудь сталкивался? Подскажите, пожалуйста, с чем это может быть связано. Подозреваю, что дело в настройках MSSQL, но что нужно подправить?

P.S. пробовал и mssql_connect, и mssql_pconnect - ошибка все равно возникает. 

Автор: sTa1kEr 8.6.2007, 21:05
Подобная проблема была с MSSQL 2k (из за библиотеки ntwdblib.dll), но, вполне возможно, что это может проявится и на 2005. Попробуйте установить(или найти этот файл в дистрибутиве) Enterprise Manager (именно интерпрайз менеджер от MSSQL 2k, а не менеджмент студио, т.к. в менеджмент студио такой библиотеке нету), а затем скопировать эту библиотеку из c:\windows\system32\ntwdblib.dll в директорию с PHP. Если это не поможет, то можете попробовать соединятся с бд через ODBC.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)