From:             
Operating system: Windows 7 / Debian
PHP version:      5.3.2
Package:          PDO related
Bug Type:         Bug
Bug description:bindColumn creates Warning regardless of ATTR_ERRMODE settings

Description:
------------
If you call bindColumn on a non existent column it will always create a
warning, no matter how the PDO object is configured to respond to errors
(ERRMODE_EXCEPTION, ERRMODE_SILENT, ERRMODE_WARNING).



I actually recreated this on PHP 5.3.1 and PHP 5.2.6-1+lenny8 (from Debian
Lenny repository) and have NOT tried it on 5.3.2. Since I was not able to
find any references for this bug on the web, I believe I might be the first
one to encounter it and it is propably not fixed as of PHP 5.3.2

Test script:
---------------
$pdo = new PDO('mysql:host=localhost;dbname=db', 'root', '');

$pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );

$statement = $pdo->prepare('SELECT id FROM aTable');

$statement->execute();



$field= NULL;



try

{

   $statement->bindColumn('none_existent_field', $field, PDO::PARAM_INT);



   while ($statement->fetch( PDO::FETCH_BOUND ))

   {

      echo $field. "<br/>\n";

   }

}

catch (PDOException $e)

{

   echo "Database field not in result set!<br/>\n";

}

Expected result:
----------------
The string "Database field not in result set!<br/>\n";

Actual result:
--------------
A warning:

<b>Warning</b>:  PDOStatement::bindColumn() [<a
href='pdostatement.bindcolumn'>pdostatement.bindcolumn</a>]: Did not found
column name 'none_existent_field' in the defined columns; it will not be
bound in <b>/path/to/script.php</b> on line <b>10</b><br />



-- 
Edit bug report at http://bugs.php.net/bug.php?id=52104&edit=1
-- 
Try a snapshot (PHP 5.2):            
http://bugs.php.net/fix.php?id=52104&r=trysnapshot52
Try a snapshot (PHP 5.3):            
http://bugs.php.net/fix.php?id=52104&r=trysnapshot53
Try a snapshot (trunk):              
http://bugs.php.net/fix.php?id=52104&r=trysnapshottrunk
Fixed in SVN:                        
http://bugs.php.net/fix.php?id=52104&r=fixed
Fixed in SVN and need be documented: 
http://bugs.php.net/fix.php?id=52104&r=needdocs
Fixed in release:                    
http://bugs.php.net/fix.php?id=52104&r=alreadyfixed
Need backtrace:                      
http://bugs.php.net/fix.php?id=52104&r=needtrace
Need Reproduce Script:               
http://bugs.php.net/fix.php?id=52104&r=needscript
Try newer version:                   
http://bugs.php.net/fix.php?id=52104&r=oldversion
Not developer issue:                 
http://bugs.php.net/fix.php?id=52104&r=support
Expected behavior:                   
http://bugs.php.net/fix.php?id=52104&r=notwrong
Not enough info:                     
http://bugs.php.net/fix.php?id=52104&r=notenoughinfo
Submitted twice:                     
http://bugs.php.net/fix.php?id=52104&r=submittedtwice
register_globals:                    
http://bugs.php.net/fix.php?id=52104&r=globals
PHP 4 support discontinued:          http://bugs.php.net/fix.php?id=52104&r=php4
Daylight Savings:                    http://bugs.php.net/fix.php?id=52104&r=dst
IIS Stability:                       
http://bugs.php.net/fix.php?id=52104&r=isapi
Install GNU Sed:                     
http://bugs.php.net/fix.php?id=52104&r=gnused
Floating point limitations:          
http://bugs.php.net/fix.php?id=52104&r=float
No Zend Extensions:                  
http://bugs.php.net/fix.php?id=52104&r=nozend
MySQL Configuration Error:           
http://bugs.php.net/fix.php?id=52104&r=mysqlcfg

Reply via email to