ID:               33618
 Updated by:       [EMAIL PROTECTED]
 Reported By:      matthew_peters at uk dot ibm dot com
-Status:           Open
+Status:           Closed
 Bug Type:         PDO related
 Operating System: WinXP
 PHP Version:      5.1.0b2
 New Comment:

This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.

Will be fixed in the next snapshot.


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

[2005-07-08 19:02:26] matthew_peters at uk dot ibm dot com

Just tried this with the latest from the snapshot that iliaa  points to
and got the same result. 

For the sceptical:
1. Downloaded latest (reports PHP 5.1.0-dev (cli) (built: Jul  8 2005
12:23:17)
2. enabled php.ini-dist as php.ini
3. made the extension_dir c:\php\ext
4. added the one extension php_pdo_mysql
5. ran my test program - output "%ld".

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

[2005-07-08 18:36:40] [EMAIL PROTECTED]

Please try using this CVS snapshot:

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



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

[2005-07-08 18:31:22] matthew_peters at uk dot ibm dot com

Description:
------------
Call to PDO LastInsertId() with the MySQL driver was working fine for
me on 5.0.3 and 5.0.4 but is returning "%ld" with 5.1 b2. I am using
just the php_pdo_mysql.dll extension that came with the 5.1 beta. 


Reproduce code:
---------------
<?php

$dbh = new
PDO("mysql:dbname=COMPANYDB;host=localhost",'root','*******');

$stmt = 'INSERT INTO company (name) VALUES ("Acme");';
$pdo_stmt = $dbh->prepare($stmt);
$rows_affected = $pdo_stmt->execute();
$last_insert_id = $dbh->lastInsertId();
echo $last_insert_id; // gets %ld

?>

Expected result:
----------------
What I want to see is the primary key of the row I have just inserted.
The database definition by the way is:

create table company (
   id integer auto_increment,
   name char(20),
   employee_of_the_month integer,
   primary key(id) ); 

Actual result:
--------------
What I do see is %ld.


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


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

Reply via email to