存储过程:DELIMITER $$
CREATE PROCEDURE login (IN uname VARCHAR(30),IN upwd VARCHAR(32), OUT re_uinfo VARCHAR(50))
BEGIN
SELECT @re_uinfo:=concat(user_id,'|',user_name) as uinfo FROM glcity_user WHERE user_name=uname AND user_pwd=upwd AND user_state=1 LIMIT 1;
END;
$$PHP调用:
#$ok_cg= $DB->hxGetOne("call login('admin','123456',@ok_cg)");
MYSQL数据库:
function hxGetOne($sql = "")
{
if($sql)
{
$this->hxQuery($sql);
}
$rows = mysql_fetch_array($this->result,$this->rsType);
return $rows;
}说明:
如果
$ok_cg= $DB->hxGetOne("SELECT * FROM glcity_user WHERE user_name='admin' AND user_pwd='123456' AND user_state=1 LIMIT 1;这样是有一条记录返回的,输出$ok_cg["user_name"]为"admin",
通过存储过程来调用就没有值输出了,我是PHP的初学者,请各位朋友帮帮忙了,很急.
我的功能是用户登录时,通过存储过程返回登录的用户的ID号及用户的昵称.
CREATE PROCEDURE login (IN uname VARCHAR(30),IN upwd VARCHAR(32), OUT re_uinfo VARCHAR(50))
BEGIN
SELECT @re_uinfo:=concat(user_id,'|',user_name) as uinfo FROM glcity_user WHERE user_name=uname AND user_pwd=upwd AND user_state=1 LIMIT 1;
END;
$$PHP调用:
#$ok_cg= $DB->hxGetOne("call login('admin','123456',@ok_cg)");
MYSQL数据库:
function hxGetOne($sql = "")
{
if($sql)
{
$this->hxQuery($sql);
}
$rows = mysql_fetch_array($this->result,$this->rsType);
return $rows;
}说明:
如果
$ok_cg= $DB->hxGetOne("SELECT * FROM glcity_user WHERE user_name='admin' AND user_pwd='123456' AND user_state=1 LIMIT 1;这样是有一条记录返回的,输出$ok_cg["user_name"]为"admin",
通过存储过程来调用就没有值输出了,我是PHP的初学者,请各位朋友帮帮忙了,很急.
我的功能是用户登录时,通过存储过程返回登录的用户的ID号及用户的昵称.
解决方案 »
- 求杭州高手开发一UCHOME活动插件,有报酬,可以当面谈
- joomla1.7 前台如何显示组件
- json数据查询
- php_http.dll有php5.4的版本吗
- nginx有没像php_value一样的功能啊?
- 怎么学习框架和模板!!!
- Apache配置,用location来限制某个方法的访问,但是同一个文件下的方法都有问题了
- eXtplorer怎么修改文件上传大小限制
- 高价悬赏文本自动缩进html格式化的php代码
- 读淘宝订单API问题
- InterPhoto Image Gallery英文版 2.2.0 released - free download!
- 好项目诚邀网络高手(SEO或建站soho族)成熟项目零风险创业
CALL login('admin','123',@aaa);
SELECT @aaa ;可有结果输出:
1|admin
"1"是ID号,"admin"是昵称,所以说这样是对了呀PHP调用:
#$ok_cg= $DB->hxGetOne("call login('admin','123456',@ok_cg)");
echo "aaa" . $ok_cg["@ok_cg"] . "aaa";
这样只有看到"aaaaaa"
是不是我的PHP输出有错误?