嗨我有一個簡單的MYSQL存儲過程,它有一個IN(int)和一個OUT(int)參數。 我正在從PHP腳本調用存儲過程。通過php腳本檢索mysql存儲過程的輸出參數的問題
存儲過程的代碼:
DELIMITER $$
USE `testing`$$
DROP PROCEDURE IF EXISTS `test_sp_inout_params`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `test_sp_inout_params`(IN username VARCHAR(30), OUT user_id INT)
BEGIN
INSERT INTO users (`name`) VALUES (username);
SET user_id = LAST_INSERT_ID();
END$$
DELIMITER ;
我能夠從MySQL查詢窗口,運行存儲過程:
CALL test_sp_inout_params('TestName', @user_id);
SELECT @user_id
但是從PHP腳本我歌廳錯誤.. :(
mysqli_query($conn, "CALL test_sp_inout_params('surya', @user_id)");
$rs = mysqli_query($conn, "SELECT @user_id");
$row = mysqli_fetch_assoc($rs);
var_dump($row);
[編輯] 上面的PHP腳本執行完美,當它運行指示vidually。 但我有另一個存儲過程..當我在上面的php腳本之前調用,我geting那種警告消息。 所以,我使用的腳本是(前上述PHP腳本):
$rs1 = mysqli_query($conn, "CALL test_sp_no_params()");
$arr = array();
while($row1 = mysqli_fetch_assoc($rs1))
$arr[] = $row1;
是什麼,當我撥打第二個存儲過程的問題?
任何人都可以幫助我!
由於提前, SuryaPavan
這些錯誤是什麼? – k102 2011-06-17 12:14:36
警告:mysqli_fetch_assoc()期望參數1爲mysqli_result,null給出.......... var_dump($ row)==> NULL – SuryaPavan 2011-06-17 12:53:21