php mysql 存储过程 返回值 10

我想请问的是,如何设计mysql存储过程并返回值。打个比方,我想做个登陆验证用的存储过程,但我只想在验证成功时返回true,而验证失败则返回false。这个存储过程该怎么... 我想请问的是,如何设计mysql存储过程并返回值。
打个比方,我想做个登陆验证用的存储过程,但我只想在验证成功时返回true,而验证失败则返回false。这个存储过程该怎么做呢?目前我只能是像普通select语句那样返回结果集。
展开
 我来答
cssalp
2011-05-31 · TA获得超过193个赞
知道小有建树答主
回答量:209
采纳率:0%
帮助的人:238万
展开全部
一般你从登陆端获得用户名和密码,
1、然后你通过用户名在数据库中查找
2、如果该用户名不存在,那么返回false
3、如果用户名存在,那么获得相应的密码
4、将从数据库中得到的密码和登陆端得到的密码进行比较
5、如果相同,返回true,表明登陆成功;如果不等返回false,表明失败

这样不用数据库的查询语句”select STH from sth_table where name=“STHNAME" AND password="STHPASSWORD"
并且也安全
更多追问追答
追问
- - 不太明白你说的。能给个具体事例看看么!
我打个比方:
createprocedure login(int loginname varchar(15),int loginpwd varchar(32))
begin
select * from logintable where n=loginname and p = loginpwd;
end
这样就是返回记录集,我就想问下,如何写才能返回我问题里提到的,成功返回ture,失败返回false。
追答
好的
假定你得到用户名:login_name=‘abc’,login_password=‘abcp’
然后你就这样写:
$query_str="select password from logintable where name=".$login_name;//查询用户是否存在
$rst=mysql_querry($query_str);
if($rst==false)
{
return false;//不存在,false is returned
}
$row=mysql_fetch_array($rst);
$password=$row["password"];//我们得到了password
//假定数据库存放密码是没有加密
//如果密码相等,true,否则false
return (strcmp($password, $login_password))?true:false;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式