mysqli(.....)
new是初始化mysqli类的意思
你用的是mysqli类,如果你需要把查询结果读到数组,你是不可以使用mysqli_fetch_array等函数的(因为类会把函数封装,过程函数是没办法用的)。
你只能使用你这个类里面的函数,去看看这个类应该有把查询结果读到数组的函数的。
----------------------------------------------------------------------------------------------------------------------
如果你用的是过程,那么应该这么写:
<?php
mysql_connect('127.0.0.1','root','123456')
//连接数据库,主机名127.0.0.1,用户名root,密码123456
mysql_select_db('phpmyadmin')
//选择数据库phpmyadmin
$user=$_POST['uid']
//把post的uid保存为user变量
$sql="select
*
from
userinfo
where
username='$user'"
//定义sql语句
$query=mysql_query($sql)
//执行,并保存为变量
$row=mysql_fetch_array($query)
//把执行结果保存为变量
echo
$row['sex']
//输出一个做测试
?>
如果不行,你可以把mysql换成mysqli
还真没看出来哪里错了,参数预处理就是这么写的,从异常信息看,提示的是sql错误,但是jdbc的路径不是官方驱动的路径,是不是你自己打的包,我怀疑你用的驱动包不支持这种写法,因为sql提示就是参数没有代进去call sp_add()是不是你定义的过程有问题吧,并没有指出返回结果来
像我这样是可以的:
CREATE PROCEDURE sp_add(a int, b int,out c int)
begin
set c=a+ b
end
调用过程:
call sp_add (1,2,@a)
select @a
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)