Форумы портала PHP.SU » » Работа с СУБД » PDO не выводит результирующий набор

Страниц (1): [1]
 

1. Ivan_KO77 - 11 Декабря, 2018 - 10:01:33 - перейти к сообщению
Добрый день!

в БД MySQL есть процедура, возвращающая определенный набор полей (ну, или не возвращающая ничего, если по входящим параметрам не найдено совпадений Улыбка).

При попытке вызвать процедуру описанным ниже скриптом, никаких данных не получаю:

$cn=new PDO($dsn, $login, $password);

$alertquery=$cn->query("call P_DISPARITY_ISSUES('".$order_id."','".$INN."')")->fetchAll();


if ($alertquery)
{
$result=$alertquery;
}

else
{
$result=false;
$ar_ALERT='error';
}

В переменную $ar_ALERT всегда получаю 'error'

Сама процедура работает вроде как корректно, при прямом вызове (например, через phpmyadmin), скрипт отрабатывает без ошибок


С PDO работаю мало - может, что не так делаю - помогите разобраться пожалуйста.
2. andrewkard - 12 Декабря, 2018 - 11:15:30 - перейти к сообщению
Пробуйте по примеру:
PHP:
скопировать код в буфер обмена
  1.  
  2. $stmt = $dbh->prepare("CALL sp_returns_string(?)");
  3. $stmt->bindParam(1, $return_value, PDO::PARAM_STR, 4000);
  4.  
  5. // вызов хранимой процедуры
  6. $stmt->execute();
  7.  
  8. print "процедура вернула $return_value\n";
  9.  

 

Powered by ExBB FM 1.0 RC1