0
我正在使用如下的msql函數。如何從MySQL函數訪問PHP中的返回值
CREATE FUNCTION `check_login`(p_username VARCHAR(30),p_password VARCHAR(30),role VARCHAR(20))
RETURNS BOOL
deterministic
BEGIN
DECLARE retval INT;
Declare cid int;
IF role = "customer" THEN
select convert(p_username,unsigned integer)into cid;
SELECT COUNT(custid) INTO retval FROM customer WHERE custid = cid and pwd = p_password;
IF retval != 0 THEN
RETURN TRUE;
ELSE
RETURN FALSE;
END IF;
END IF;
END$$
DELIMITER ;
並使用以下php代碼。
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];
$role=$_POST['role'];
$sql="select check_login('$myusername','$mypassword','$role')";
$result=mysql_query($con, $sql);
$row=mysql_result($row,1);
echo $row[1];
但是我無法獲得返回值。
**注意:**您的儲存功能並非真正的「確定性」。 – BlitZ
您可以使用PDO,預準備語句的準備語句和bindValue()方法。 –