Добрый день!
в БД 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 работаю мало - может, что не так делаю - помогите разобраться пожалуйста.
1. Ivan_KO77 - 11 Декабря, 2018 - 10:01:33 - перейти к сообщению
2. andrewkard - 12 Декабря, 2018 - 11:15:30 - перейти к сообщению
Пробуйте по примеру:
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- $stmt = $dbh->prepare("CALL sp_returns_string(?)");
- $stmt->bindParam(1, $return_value, PDO::PARAM_STR, 4000);
- // вызов хранимой процедуры
- $stmt->execute();
- print "процедура вернула $return_value\n";