2011-01-12 136 views
2

我創建存儲過程,這裏代碼:存儲過程

CREATE PROCEDURE `dbnm`.`getlogin` 
(
    IN uid INT, 
    IN upass VARCHAR(45) 
) 
BEGIN 

if exists(select uphno,pass from user_master where uphno=uid and pass=upass)then 
    ***true 
    else 
    ***false 
end if; 
END $$ 

DELIMITER ; 

我想返回值(** 真或* *假)通過調用存儲過程
從PHP SP PHP代碼:

$res = $mysqli->query('call getlogin("1","rashmi")'); 

如何在PHP從SP acesss布爾值? 謝謝

回答

0

看看這個

PHP + MySql + Stored Procedures, how do I get access an "out" value?

可以使用

$res = $mysqli->query('call getlogin("1","rashmi",@value)'); 
    $rs = mysql_query('SELECT @value'); 
    while($row = mysql_fetch_assoc($rs)) 
    { 
    debug($row); 
    } 
+0

好了,現在我的SP代碼:CREATE PROCEDURE`tracker`.`getlogin` ( 應用於UID INT, IN upass VARCHAR(45), OUT active BOOLEAN ) BEGIN if exists(select uphno,pass from user_master where uphno = uid and pass = upass)然後 SELECT 1 INTO active; 別的 SELECT 1 INTO活性; end if; END $$ DELIMITER如何調用在PHP? – xcodemaddy 2011-01-12 08:00:01

+0

else應包含SELECT 0 INTO active; – 2011-01-12 08:16:31

0

嘗試

$data = $res->fetch_array(MYSQLI_NUM); 
$result = $data[0];