ارساال پارامتر استور پروسیجر به sqlsrv_query
سلام وقت بخیر
بنده یک استور پروسیجر دارم با نام FindProc با پارامتر Serial@
حالا میخوام ازش داخل php استفاده کنم
حالا سوال بنده اینه که چجوری میتونم از استور پروسیچر استفاده کنم و چجوری پارامتر را ارسال کنم؟
ممنون میشم جواب بدین چون فوق العاده فوری فوریه
این کد بنده هستش :
جاهایی که نیاز به اصلاح داره رو ممنون میشم بهم بگید که اصلاح کنم
function GetData($conn, $sqlStatement,$Serial)
{
$resultList=array();
$resultList=[];
$sql = $sqlStatement;
$stmt = sqlsrv_query($conn, $sql);
if ($stmt)
{
while ($row = sqlsrv_fetch_array($stmt,SQLSRV_FETCH_ASSOC))
{
array_push($resultList,$row);
}
return json_encode($resultList);
}
else
{
foreach( sqlsrv_errors() as $error )
{
echo "<div><strong class='bold-text'>وضعیت: </strong>".$error[ 'SQLSTATE']."</div>";
echo "<div><strong class='bold-text'>کد خطا: </strong>".$error[ 'code']."</div>";
echo "<div><strong class='bold-text'>پیغام خطا: </strong>".$error[ 'message']."</div>";
}; }}var_dump(GetData($conn,"{call FindProc }",'47440825399'));
نقل قول: ارساال پارامتر استور پروسیجر به sqlsrv_query
سلام و روز خوش در نگاه اول چیزی که دیده میشه تناقض در کد هست:
توابع sqlsrv برای کار با MS SQL هست و نه MySQL،
ولی شما برای سدا زدن stored procedure از CALL استفاده کردین که در MySQL استفاده میشه
در حالی که برای MS SQL باید از EXEC استفاده کنین.
حالا اول باید اینو مشخص کنین که کدوم سناریو هست تا بتونم راهنمایی کنم.
مورد بعدی این هست که هم MS SQL و هم MySQL مستقیما خروجی JSON میدن
و اون لوپ while کلا نیازی بهش نیست.