PHP通过存储过程名查数据,php - 使用ODBC和PHP检索存储过程的数据

我正在尝试使用ODBC和PHP检索out参数的值。我一直在网上搜索,但无济于事。 PDO和mysqli有很多解决方案,我只为odbc找到this。我有点被参数和操作所迷惑。

我可以建立与数据库的连接,但错误总是弹出。我无法弄清楚它们。[Sybase][ODBC Driver] Invalid string or buffer length

有什么建议吗?

$conn=odbc_connect("dsn", " ", " ");

if (!$conn)

{

exit("Connection Failed: " . $conn);

}

$sql=odbc_prepare("CALL ndTblUser (@varUserId,@varUserPwd)");

$stmt=odbc_execute($sql, "SELECT @varUserId as UserId, @varUserPwd as UserPwd");

$rs=odbc_exec($conn,$stmt);

if (!$rs)

{

exit("Error : " . odbc_errormsg());

}

echo "

echo "

Id";

echo "

Password";

while (odbc_fetch_row($rs))

{

$UserId=odbc_result_all($rs,"UserId");

$UserPwd=odbc_result_all($rs,"UserPwd");

echo "

$UserId";

echo "

$UserPwd";

}

odbc_close($conn);

?>

最佳答案

现在我只是在猜测,但是如果实际查询中的$UserId和$UserPwd应该是列,请尝试从中删除$号。稍后在代码中,您尝试将其作为不带$号的列名使用,因此我不确定这是否是导致错误的原因。直到$UserId=odbc_result($rs,"UserId");,它们才是PHP变量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值