php mysql 存储过程 返回值 10
我想请问的是,如何设计mysql存储过程并返回值。打个比方,我想做个登陆验证用的存储过程,但我只想在验证成功时返回true,而验证失败则返回false。这个存储过程该怎么...
我想请问的是,如何设计mysql存储过程并返回值。
打个比方,我想做个登陆验证用的存储过程,但我只想在验证成功时返回true,而验证失败则返回false。这个存储过程该怎么做呢?目前我只能是像普通select语句那样返回结果集。 展开
打个比方,我想做个登陆验证用的存储过程,但我只想在验证成功时返回true,而验证失败则返回false。这个存储过程该怎么做呢?目前我只能是像普通select语句那样返回结果集。 展开
1个回答
展开全部
一般你从登陆端获得用户名和密码,
1、然后你通过用户名在数据库中查找
2、如果该用户名不存在,那么返回false
3、如果用户名存在,那么获得相应的密码
4、将从数据库中得到的密码和登陆端得到的密码进行比较
5、如果相同,返回true,表明登陆成功;如果不等返回false,表明失败
这样不用数据库的查询语句”select STH from sth_table where name=“STHNAME" AND password="STHPASSWORD"
并且也安全
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;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询