ID:               35793
 Updated by:       [EMAIL PROTECTED]
 Reported By:      deadman_great at mail dot ru
-Status:           Assigned
+Status:           Feedback
 Bug Type:         PDO related
 Operating System: RH Fedora Core 2
 PHP Version:      5CVS-2005-12-25 (snap)
 Assigned To:      wez
 New Comment:

Almost certainly a mysql bug.  Check in with the mysql bug database.


Previous Comments:
------------------------------------------------------------------------

[2005-12-26 17:06:35] [EMAIL PROTECTED]

Assigned to the PDO maintainer.

------------------------------------------------------------------------

[2005-12-25 19:21:12] deadman_great at mail dot ru

Tried php5.1-200512251730, - same result.

------------------------------------------------------------------------

[2005-12-25 17:37:56] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php5.1-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5.1-win32-latest.zip



------------------------------------------------------------------------

[2005-12-24 18:30:13] deadman_great at mail dot ru

OK, without OO:

<?

$pdo = new PDO('mysql:host=localhost;dbname=mydb','login','pass');
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
        
function Query ()
{
        global $pdo;

        $query = 'SELECT `created`, to_days(from_unixtime(`created`)) as
`day`,count(`id`) as `count` '.
        'FROM `orders` '.
        'WHERE `partner`=:partner '.
        'AND `created`>=:date '.
        'GROUP BY `day`';

        $vars = array(':partner'=>9,':date'=>1132797644);

        $stm = $pdo->Prepare($query);
        $stm->Execute($vars);
        return $stm;
}

$result = Query();
foreach ($result as $day)
{
        print_r($day); echo '<hr>';
}

$result = Query();
foreach ($result as $day)
{
        print_r($day); echo '<hr>';
}

$result = Query();
foreach ($result as $day)
{
        print_r($day); echo '<hr>';
}


?>

SQL:

CREATE TABLE `orders` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `state` tinyint(3) unsigned NOT NULL default '0',
  `partner` int(10) unsigned NOT NULL,
  `created` int(10) unsigned NOT NULL default '0',
  `completed` int(10) unsigned default NULL,
  `count` tinyint(3) unsigned NOT NULL,
  `cost` float(11,2) unsigned NOT NULL default '0.00',
  `zip` int(10) unsigned default NULL,
  `region` varchar(80) default NULL,
  `city` varchar(120) default NULL,
  `street` varchar(255) default NULL,
  `house` varchar(32) default NULL,
  `building` varchar(32) default NULL,
  `apartment` varchar(32) default NULL,
  `name` varchar(255) default NULL,
  `surname` varchar(255) default NULL,
  `patronymic` varchar(255) default NULL,
  `mail` varchar(120) default NULL,
  `comments` text,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO `orders` VALUES
(1,0,9,1134531133,1134931138,2,20,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
INSERT INTO `orders` VALUES
(2,4,9,1134911133,1134911139,1,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
INSERT INTO `orders` VALUES
(3,1,9,1134811133,1134811137,4,40,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
INSERT INTO `orders` VALUES
(4,3,9,1134711133,1134711533,1,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
INSERT INTO `orders` VALUES
(5,4,9,1134511131,1134511138,1,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
INSERT INTO `orders` VALUES
(6,1,0,1135521534,NULL,1,10,121231,'test','test','test','12',NULL,NULL,'test','test','test','[EMAIL
 PROTECTED]',NULL);
INSERT INTO `orders` VALUES
(7,0,9,1134522614,NULL,1,10,354354,'test2','test2','test2','12',NULL,NULL,'test2','test2','test2','[EMAIL
 PROTECTED]',NULL);

------------------------------------------------------------------------

[2005-12-24 03:15:35] deadman_great at mail dot ru

Description:
------------
Current script works fine on localhost (winxp), and throw errors on
remote server (rh-fedora).

Software:
Local: winxp-sp2,php-5.1.1,mysql-5.0.3
Remote: fedora-c2,php-5.1.1,mysql-5.0.9

Reproduce code:
---------------
$query = 'SELECT `created`, to_days(from_unixtime(`created`)) as
`day`,count(`id`) as `count` FROM `orders` WHERE `partner`=:partner AND
`created`>=:date GROUP BY `day`';

$vars = array(':partner'=>9,':date'=>1132797644);

$stm = $pdo->Prepare($query);
$result = $stm->Execute($vars);
foreach ($result as $day) // LINE-123
{
...
}

Expected result:
----------------
Rows.

Actual result:
--------------
Warning: main() [function.main]: SQLSTATE[HY000]: General error: 2050
in ... on line 123


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=35793&edit=1

Reply via email to