#php #sql-server #stored-procedures #agi
#php #sql-сервер #хранимые процедуры #agi
Вопрос:
Я пытаюсь использовать хранимую процедуру из MS SQL на PHP для моего AGI, которая возвращала бы определенные значения. Я не уверен, как использовать эти возвращаемые значения в качестве переменных. Я хотел бы использовать Column1, Column2 (все 3 строки), Column (все 3 строки) в качестве переменных.
<?php
require('/var/lib/asterisk/agi-bin/phpagi.php');
$agi=new AGI();
$agi->answer();
$cli=$agi_callerid;
$con = mssql_connect('host','user','pass') or die('ERROR : Could not
connect to the server!');
if (!$con)
mssql_select_db('DB') or die('ERROR : Could not select a DATABASE');
$proc = mssql_init('exec store_procedure '$cli'', $con);
$proc_result = mssql_execute($proc);
mssql_free_statement($proc);
?>
Я полный новичок в PHP, и любая помощь будет высоко оценена. Пожалуйста, пожалуйста, пожалуйста, ответьте! Спасибо!
Комментарии:
1. Пожалуйста, добавьте структуру таблицы к вопросу, что помогло бы пользователям воссоздать ту же структуру БД на своих машинах. SQLFiddle также помогает.
2. Привет, я добавил полную хранимую процедуру, созданную специалистом по базам данных. Не уверен, поможет ли это.
Ответ №1:
Для тех, кто ищет что-то похожее на это… Я использовал следующий код…
$sql_statement = mssql_init("stored_procedure '$cli'", $conn);
$result=mssql_execute($sql_statement);
$x=0;
while ($row = mssql_fetch_assoc($result))
{
$column1[$x]= $row['Column1'];
$column2[$x]= $row['Column2'];
$column3= $row['Column3'];
$x ; }
mssql_free_statement($sql_statement);
затем я просто повторил переменные $ column1 [0], $ column2 [1] и т. Д. И т. Д…