Edit report at http://bugs.php.net/bug.php?id=51300&edit=1
ID: 51300
User updated by: tanguy dot pruvot at gmail dot com
Reported by: tanguy dot pruvot at gmail dot com
Summary: SELECT * CRASH With LibMySQL > 5.0.51
Status: Open
Type: Bug
Package: PDO related
Operating System: Windows 7
PHP Version: 5.2.13
New Comment:
MySQL and MySQLi extensions are working, that only affects pdo_mysql
extension...
Previous Comments:
------------------------------------------------------------------------
[2010-03-15 04:06:46] tanguy dot pruvot at gmail dot com
Description:
------------
Since LibMySQL.dll 5.0.52 (and tested to 5.1.44)
I ve the found why pdo_mysql is crashing...
Here :
http://github.com/php/php-
src/blob/4f3e41e55dae1978487461d73805eaac8202aff8/ext/pdo_mysql/mysql_statement.
c#L429
The struct pdo_column_data must be 0x54 (84.) bytes sized... Actually it
is 0x50
(80.) bytes
You can fix binary dll by replacing (with hex editor : 83 C3 50 by 83 C3
54)
Test script:
---------------
<?php
$dbh = new
PDO('mysql:host=127.0.0.1;port=3306;dbname=ubagestion_dev','root','');
echo "ok";
$dbh->exec('SET CHARACTER SET latin1');
echo "ok";
$stmt = $dbh->query("select ID_Utilisateur from utilisateurs");
echo "ok";
$stmt = $dbh->prepare("select * from utilisateurs");
echo "ok";
$results = $stmt->execute(); // CRASH HERE or on $dbh->query("SELECT *
FROM ...")
echo "NOT CRASHED";
foreach ($results as $id){
echo $results['ID_Utilisateur'];
}
Actual result:
--------------
no trace, system crash (and apache too if apache2handler used)
Crash on second column name
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=51300&edit=1