J-Pro
Новичок
Регистрация OUT-параметра в ф-ции bind_param
Народ, всем привет.
Столкнулся с проблемкой.. Есть в базе процедура с несколькими IN-параметрами и одним OUT-параметром. Пока выполнял из пхп только процедуры с IN-параметрами - всё было ок, пользовался ф-цией $stmt->bind_param или mysqli_stmt_bind_param, что одно и то же.
Но как только захотел забиндить OUT-параметр этой же функцией:
,получил такую ошибку:
На всякий случай определение ф-ции:
Кто знает, как забиндить OUT-параметр? Для DB2 всё просто, там указывается прямо в ф-ции:
, а тут по-другому...
Кто знает как? Народ, подскажите, полиз, выбился из сил искать в нете
Везде не то 
Спасибо огромное заранее тому, кто откликнется!
Народ, всем привет.
Столкнулся с проблемкой.. Есть в базе процедура с несколькими IN-параметрами и одним OUT-параметром. Пока выполнял из пхп только процедуры с IN-параметрами - всё было ок, пользовался ф-цией $stmt->bind_param или mysqli_stmt_bind_param, что одно и то же.
Но как только захотел забиндить OUT-параметр этой же функцией:
PHP:
$procedureCallStatement = "CALL AddNew(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
$newID = -1;
$stmt = $mysqli->prepare($procedureCallStatement);
$stmt->bind_param('isssiisssiii', $activityTypeID, $articleName, $pathToPhoto, $pathToFirstPhoto, $old,$new, $startDate, $endDate, $description, $language, $updatedBy, $newID);
PHP:
OUT or INOUT argument 12 for routine backoffice.AddNew is not a variable or NEW pseudo-variable in BEFORE trigger
На всякий случай определение ф-ции:
PHP:
CREATE PROCEDURE `AddNew`(IN activitytypeid BIGINT, IN articlename VARCHAR(128), IN pathtophoto VARCHAR(255), IN pathtofirstphoto VARCHAR(255), IN old INT(11), IN new INT(11), IN startdate DATE, IN enddate DATE, IN description VARCHAR(255), IN languageid BIGINT, IN updatedby BIGINT, OUT newid BIGINT)
NOT DETERMINISTIC
SQL SECURITY DEFINER
COMMENT ''
....
Кто знает, как забиндить OUT-параметр? Для DB2 всё просто, там указывается прямо в ф-ции:
PHP:
$stmt->bindParam(1, $second_name, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 32);
Кто знает как? Народ, подскажите, полиз, выбился из сил искать в нете


Спасибо огромное заранее тому, кто откликнется!