Перемещение php-скрипта из IIS в Linux - скрипт не работает - PullRequest
0 голосов
/ 19 ноября 2010

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

Неустранимая ошибка: вызов неопределенной функции mssql_connect () в /home/thePathToTheScript/services/dhTest.php в строке 10

Строка 10= $ dbhandle = mssql_connect ($ myServer, $ myUser, $ myPass)

//start
$myServer = "SQLB15.sqlDBCenter.com";
$myUser = "unc_user";
$myPass = "unc1234";
$myDB = "db_Stuff"; 

//connection to the database
$dbhandle = mssql_connect($myServer, $myUser, $myPass)
  or die("Couldn't connect to SQL Server on $myServer"); 

//select a database to work with
$selected = mssql_select_db($myDB, $dbhandle)
  or die("Couldn't open database $myDB"); 

//declare the SQL statement that will query the database
$query = "SELECT DISTINCT Name As theName";
$query .= "FROM tb_Names ";
$query .= "ORDER BY Name";

//execute the SQL query and return records
$result = mssql_query($query);
//---------------------------------------------------------------- 

Любые указатели высоко ценятся

Добавлено - это раздел mssql в php.ini [MSSQL];Разрешите или предотвратите персистентные каналы.mssql.allow_persistent = On

;Максимальное число постоянных ссылок.-1 означает без ограничений.mssql.max_persistent = -1

;Максимальное количество ссылок (постоянные + непостоянные).-1 означает без ограничений.mssql.max_links = -1

;Минимальная серьезность ошибки для отображения.mssql.min_error_severity = 10

;Минимальная серьезность сообщения для отображения.mssql.min_message_severity = 10

;Режим совместимости со старыми версиями PHP 3.0.mssql.compatability_mode = Off

;Тайм-аут соединения; mssql.connect_timeout = 5

;Тайм-аут запроса; mssql.timeout = 60

;Допустимый диапазон 0 - 2147483647. По умолчанию = 4096.; mssql.textlimit = 4096

;Допустимый диапазон 0 - 2147483647. По умолчанию = 4096.; mssql.textsize = 4096

;Ограничивает количество записей в каждой партии.0 = все записи в одной партии.; mssql.batchsize = 0

;Укажите способ возврата столбцов datetime и datetim4;On => Возвращает данные, преобразованные в настройки сервера SQL;Off => Возвращает значения в виде ГГГГ-ММ-ДД чч: мм: сс; mssql.datetimeconvert = On

;Использовать NT-аутентификацию при подключении к серверу mssql.secure_connection = Off

;Укажите максимальное количество процессов.По умолчанию = 25; mssql.max_procs = 25

Ответы [ 2 ]

1 голос
/ 19 ноября 2010

На вашем Linux-компьютере не установлено расширение MS SQL.

См. Документацию PHP по установке / настройке MS SQL

1 голос
/ 19 ноября 2010

Вы пытаетесь использовать расширение mssql, которое, вероятно, не загружено. Вам нужно проверить ваш php.ini и найти «extension = mssql.so», затем раскомментировать его и перезапустить Apache.

Если этого расширения нет, или оно не работает (ошибки при перезапуске apache или при запуске скрипта), то вам нужно будет проверить в своем дистрибутиве Linux, какие дополнительные пакеты вам нужны и как их сделать. работа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...