我尝试将这个MySQL存储过程的两个输出设置为PHP变量:
$result = mysql_query("CALL mst2('$q', @eset, @leng)");
if (!$result) {
die('Invalid query: ' . mysql_error());
}
while($row = @mysql_fetch_assoc($result))
{
debug($row);
}
$eset = $row->{'@eset'};
$length= $row->{'@leng'};
最后两行抛出错误Trying to get property of non-object
。有谁知道这样做的正确方法吗?
发布于 2012-12-06 01:24:53
下面是我如何让它与mysql_query
一起工作的
$result = mysql_query("CALL mst2('$q', @eset, @leng)");
$result = mysql_query("SELECT @eset, @leng");
if (!$result) {
die('Invalid query: ' . mysql_error());
}
while($row = @mysql_fetch_object($result))
{
$eset = $row->{'@eset'};
}
在该过程之后,我调用了一条SELECT
语句,然后在while循环中,正确设置了$eset变量。
发布于 2012-12-06 01:01:28
mysql_fetch_object而不是mysql_fetch_assoc应该修复你的查询。
其次,您应该真正考虑使用mysqli_或PDO语句。
链接如下:
https://stackoverflow.com/questions/13735195
复制相似问题