ID: 42548
Updated by: [EMAIL PROTECTED]
Reported By: garethjo at usc dot edu
-Status: Open
+Status: Feedback
Bug Type: MySQLi related
Operating System: Windows XP, Windows 2003
PHP Version: 5.2.4
New Comment:
Have you seen bug #32882 and bug #35203 ??
Previous Comments:
------------------------------------------------------------------------
[2007-09-05 00:10:23] garethjo at usc dot edu
<?php
//------------ DATABASE SETUP------------------------
$mysqli = mysqli_init();
$mysqli->real_connect('localhost', 'root', 'root_pass', 'test');
if (mysqli_connect_errno())
{
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$strDatabaseCreation = 'CREATE DATABASE IF NOT EXISTS test;
USE test;
DROP TABLE IF EXISTS `products`;
CREATE TABLE `products` (
`intProductId` int(10) unsigned NOT NULL auto_increment,
`strProductName` varchar(45) NOT NULL,
`douProductPrice` double NOT NULL,
`intQuantity` int(10) unsigned NOT NULL,
PRIMARY KEY (`intProductId`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO `products`
(`intProductId`,`strProductName`,`douProductPrice`,`intQuantity`)
VALUES
(1,\'Mugs\',10,5),
(2,\'Boots\',75,12);
CREATE PROCEDURE `test`.`spGetProducts`()
BEGIN
SELECT * FROM Products;
END
';
printf ("Connection: %s<br>\r\n.", $mysqli->host_info);
if($mysqli->multi_query ($strDatabaseCreation))
{
print "Databse created successfully<br>\r\n";
}
else
{
print "failed to create database<br>\r\n".$mysqli->error;
$mysqli->close();
die;
}
$mysqli->close();
//------------ BUG TEST START --------------------------
$mysqli = mysqli_init();
$mysqli->real_connect('localhost', 'root', 'root_pass', 'test');
if (mysqli_connect_errno())
{
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
if($mysqli->real_query ("CALL spGetProducts();"))
{
if($objResult = $mysqli->store_result())
{
while($row = $objResult->fetch_assoc())
{
print $row["strProductName"]."
".$row["strProductName"]."<br>\r\n";
}
$objResult->free_result();
}
else
{
print "no results found";
}
}
else
{
print $mysqli->error;
}
$mysqli->close();
?>
------------------------------------------------------------------------
[2007-09-04 19:24:08] garethjo at usc dot edu
Description:
------------
All stored procedure call which would return a result set (and did in
the past) produces the error
"PROCEDURE procedure.Name can't return a result set in the given
context"
However the expected results are returned via command line and other
mysql clients.
Reproduce code:
---------------
test code can be found at:
http://128.125.64.37/bug.zip
Expected result:
----------------
resultset returned
Actual result:
--------------
PROCEDURE procedure.Name can't return a result set in the given context
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=42548&edit=1