Для простого примера предположим, что у меня есть следующая хранимая процедура в MySQL:
Код: Выделить всё
DELIMITER $$
DROP PROCEDURE IF EXISTS `test_proc`$$
CREATE PROCEDURE `test_proc`(
in input_param_1 int,
in input_param_2 int,
in input_param_3 int,
out output_sum int,
out output_product int,
out output_average int
)
BEGIN
set output_sum = input_param_1 + input_param_2 + input_param_3;
set output_product = input_param_1 * input_param_2 * input_param_3;
set output_average = (input_param_1 + input_param_2 + input_param_3) / 3;
END$$
DELIMITER ;
Код: Выделить всё
$procInput1 = "123";
$procInput2 = "456";
$procInput3 = "789";
Код: Выделить всё
$procOutput_sum;
$procOutput_product;
$procOutput_average;
Код: Выделить всё
call test_proc($procInput1, $procInput2, $procInput3, $procOutput_sum, $procOutput_product, $procOutput_average);
Код: Выделить всё
echo "Sum: ".$procOutput_sum;
echo "Product: ".$procOutput_product;
echo "Average: ".$procOutput_average;
Код: Выделить всё
Sum: 1368
Product: 44253432
Average: 456
Я занимаюсь программированием уже довольно давно, но язык PHP относительно новое для меня начинание. Я нашел множество руководств по вызову хранимых процедур MySQL из PHP. Некоторые из них представляют собой руководства по вызову хранимых процедур с параметрами входные, некоторые — руководства по вызову хранимых процедур с параметрами выходные, а некоторые — руководства по вызову хранимых процедур с помощью inout< /стронг> параметры. Я не нашел никаких руководств или примеров по вызову хранимых процедур, которые одновременно принимают оба входных и выходных параметра, но при этом не используют " входные параметры. У меня возникли проблемы с выяснением того, как закодировать привязки параметров (например: mysqli_stmt_bind_param и mysqli_stmt_bind_result) и заставить все это работать правильно.
Любая помощь будет принята с благодарностью и Заранее благодарю!
Подробнее здесь: https://stackoverflow.com/questions/170 ... meters-not