@carlo.***merata
Для вызова хранимой процедуры в Microsoft SQL Server (MS SQL) в PHP можно использовать следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
<?php $serverName = "serverName"; $connectionOptions = array( "Database" => "dbName", "Uid" => "username", "PWD" => "password" ); // Установка подключения к базе данных $conn = sqlsrv_connect($serverName, $connectionOptions); if ($conn === false) { die(print_r(sqlsrv_errors(), true)); } // Вызов хранимой процедуры $procedureName = "{call storedProcedureName (?, ?)}"; $parameters = array($param1, $param2); $stmt = sqlsrv_query($conn, $procedureName, $parameters); if ($stmt === false) { die(print_r(sqlsrv_errors(), true)); } // Обработка результатов (если нужно) while ($row = sqlsrv_fetch_array($stmt)) { echo $row['columnName'] . "<br />"; } // Освобождение ресурсов sqlsrv_free_stmt($stmt); sqlsrv_close($conn); ?> |
Замените serverName
, dbName
, username
, password
на соответствующие значения для вашей базы данных. Замените storedProcedureName
на имя вашей хранимой процедуры, а $param1
, $param2
на соответствующие параметры, которые необходимо передать в процедуру.
Обратите внимание, что для выполнения данного кода требуется иметь установленное расширение SQL Server для PHP.
@carlo.***merata
Кроме того, не забудьте учитывать безопасность при передаче параметров в хранимую процедуру, чтобы избежать SQL-инъекций. Рекомендуется использовать параметризованные запросы для передачи значений, как это показано в примере выше (используя массив $parameters).
Также важно обрабатывать ошибки при выполнении запросов и убедиться в закрытии соединения с базой данных после завершения работы с ней.
Если возникнут проблемы с выполнением кода или подключением к базе данных, убедитесь, что расширение SQL Server для PHP установлено и правильно сконфигурировано на вашем сервере.