Tôi đang cố tạo quy trình được lưu trữ trong CakePHP. Tôi đã tạo ra thủ tục trong MYSQL và tạo ra chức năng toàn cầu trong AppModel.php để nhấn thủ tục. Hàm trong AppModel là sProcedure. Bây giờ tôi có 2 điều kiện tôi có thể có biến để trở về từ thủ tục hoặc có thể có kết quả trực tiếp ví dụ. Tôi đã tạo cho Phân trang. Mặc dù nó bắn thủ tục của tôi nhưng không trả lại bất kỳ kết quả nào. Chức năng của tôi có cần sửa đổi không?CakePHP với thủ tục được lưu trữ
public function sProcedure($name = NULL, $inputParameter = array(), $outputParameter = array()) {
$this->begin();
$parameter = "";
$outputParam = "";
foreach ($inputParameter as $params) {
$parameter .= $parameter == "" ? " '$params' " : ", '$params' ";
}
if (count($outputParameter) > 0) {
foreach ($outputParameter as $prm) {
$outputParam .= $outputParam == "" ? " @$prm " : ", @$prm ";
}
}
$parameter = ($outputParam) ? $parameter . ", " . $outputParam : $parameter;
$this->query("CALL `$name`($parameter);");
$result = $this->query("SELECT $outputParam");
$this->commit();
return $result;
}
$sel_data = $this->ArticleNews->sProcedure("update_blank", $input_prameter, $output);
debug($sel_data);
là bạn nhận được bất kỳ lỗi –
tôi không nhận lỗi, thủ tục của tôi thực hiện là tốt. Nhưng tôi muốn biết cách lấy đầu ra từ thủ tục. Sử dụng cùng chức năng. Không có vấn đề nếu tôi có kết quả đầu ra hoặc biến. – Sankalp
@Sankalp là thủ tục trả về giá trị hợp pháp khi được gọi trực tiếp từ MySQL (không sử dụng PHP)? Ngoài ra, $ this-> query thực hiện chuỗi truy vấn được truyền và trả về (nếu không thất bại) một tài nguyên cần được lặp lại. – sitilge