Edit report at https://bugs.php.net/bug.php?id=48877&edit=1

 ID:                 48877
 Updated by:         mar...@php.net
 Reported by:        siegmar at siegmar dot com dot br
 Summary:            "bindValue" and "bindParam" do not work for PDO
                     Firebird
-Status:             Assigned
+Status:             Closed
 Type:               Bug
 Package:            PDO related
 Operating System:   Windows
 PHP Version:        5.2.10
 Assigned To:        mariuz
 Block user comment: N
 Private report:     N

 New Comment:

This bug has been fixed in SVN.

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/.

 For Windows:

http://windows.php.net/snapshots/
 
Thank you for the report, and for helping us make PHP better.




Previous Comments:
------------------------------------------------------------------------
[2011-12-10 22:09:41] mar...@php.net

Automatic comment from SVN on behalf of mariuz
Revision: http://svn.php.net/viewvc/?view=revision&revision=320856
Log: bug fixed #48877 - bindValue and bindParam do not work for PDO Firebird

------------------------------------------------------------------------
[2011-12-10 22:08:20] mar...@php.net

Automatic comment from SVN on behalf of mariuz
Revision: http://svn.php.net/viewvc/?view=revision&revision=320855
Log: bug fixed #48877 - bindValue and bindParam do not work for PDO Firebird

------------------------------------------------------------------------
[2011-12-10 22:04:04] mar...@php.net

Automatic comment from SVN on behalf of mariuz
Revision: http://svn.php.net/viewvc/?view=revision&revision=320854
Log: bug fixed #48877 - bindValue and bindParam do not work for PDO Firebird

------------------------------------------------------------------------
[2010-07-04 05:14:44] ssufficool at gmail dot com

Try changing the :empno to just empno in bind* it is not expected or needed:

$command = $connection->prepare('SELECT EMP_NO FROM EMPLOYEE WHERE EMP_NO = 
:empno');
$command->bindParam('empno', $value, PDO::PARAM_STR); // does not work
$command->bindValue('empno', $value, PDO::PARAM_STR); // does not work

------------------------------------------------------------------------
[2009-07-10 02:35:29] siegmar at siegmar dot com dot br

Description:
------------
The "bindValue" and "bindParam" do not work for PDO Firebird if we use named 
parameters (:parameter) but do work for question marks parameters (?).






Reproduce code:
---------------
<?php
$connection = new PDO('firebird:dbname=localhost:C:\Firebird\EMPLOYEE.FDB', 
'SYSDBA', 'masterkey');

$value = '2';

//$command = $connection->prepare('SELECT EMP_NO FROM EMPLOYEE WHERE EMP_NO = 
:empno');
//$command->bindParam(':empno', $value, PDO::PARAM_STR); // does not work
//$command->bindValue(':empno', $value, PDO::PARAM_STR); // does not work

$command = $connection->prepare('SELECT EMP_NO FROM EMPLOYEE WHERE EMP_NO = ?');
$command->bindParam('1', $value, PDO::PARAM_STR); // works
//$command->bindValue('1', $value, PDO::PARAM_STR); // works

$command->execute();
$dataset = $command->fetchAll();
foreach($dataset as $record)
  echo $record[0] . "<br />";
?>

The same code works perfectly for MySQL.

Expected result:
----------------
Using the example database "EMPLOYEE.FDB" you sould see:

2




Actual result:
--------------
nothing


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



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

Reply via email to