ID:               40913
 Updated by:       [email protected]
 Reported By:      dennis at inmarket dot lviv dot ua
-Status:           Assigned
+Status:           Feedback
 Bug Type:         PDO related
 Operating System: Win XP
-PHP Version:      5.2.1
+PHP Version:      5.2.6
 Assigned To:      wez
 New Comment:

Please try using this CVS snapshot:

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

  http://windows.php.net/snapshots/




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

[2008-09-30 16:27:09] ralfbecker at egroupware dot org

I can reproduce this bug with php5.2.6 on OpenSUSE 11.0

Ralf

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

[2008-08-11 17:06:28] mattgrdinic at yahoo dot com

Can verify this with PDO->mssql using 5.2.6 and Windows Server 2003. 

// Reproduction code:
$VIN = $_GET['VIN'];
        $imageUrl = $_GET['ImageUrl'];
        $sql_img = "SELECT VIN, Image, ImageUrl FROM ImagesDemo WHERE VIN =
:VIN AND ImageUrl =  :imageUrl";
        $result_img = Database::pdo_prepare_query($sql_img, array(':VIN' =>
$VIN, ':imageUrl' => $imageUrl));
        $result_img->bindColumn('Image', $lob, PDO::PARAM_LOB);
        $result_img->fetch(PDO::FETCH_BOUND);
        header("Content-type: image/pjpeg");
        var_dump($lob); // string(4096) + raw image data
        fpassthru($lob); // this call fails with 'supplied argument is not a
valid stream resource'
        echo $lob; // this call only spits out 4096 bytes, chopping the image
off

End result -- unable to use pdo for blobs.

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

[2008-06-01 13:00:40] mail at matya dot hu

I am using PHP 5.2.6 with MySQL 5.0.51b, and the problem is still
present.

Reproduce code:
---------------

$sql = "SELECT FileData FROM UserFile WHERE ID=?";

$stmt = $DB->prepare($sql);
$stmt->execute(array($FileID));
$stmt->bindColumn(1, $data, PDO::PARAM_LOB);
$stmt->fetch(PDO::FETCH_BOUND);
echo gettype($data);

Expected result:
----------------
resource

Actual result:
--------------
string

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

[2008-06-01 12:56:18] mail at matya dot hu

I am using PHP 5.2.6 with MySQL 5.0.51b, and the problem is still
present.

Reproduce code:
---------------

$sql = "SELECT FileName, ContentType, Size, FileData FROM `" .
File::getTableName() . "` WHERE ID=?";
$stmt = $this->_DB->prepare($sql);
$stmt->execute(array($FileID));
$stmt->bindColumn(1, $name, PDO::PARAM_STR, 255);
$stmt->bindColumn(2, $type, PDO::PARAM_STR, 255);
$stmt->bindColumn(3, $size, PDO::PARAM_INT);
$stmt->bindColumn(4, $data, PDO::PARAM_LOB);

Expected result:
----------------

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

[2007-06-19 19:06:08] hans at velum dot net

I believe this is probably the same issue, but I also notice that using
MySQL to simply execute a SQL query which contains BLOB result columns
is also returning strings instead of streams.  The difference being that
I'm not using bindColumn() and specifying PDO::PARAM_LOB.  I wouldn't
expect that I'd need to, since simply performing a standard fetch()
works as expected w/ Postgres (and, I believe, Oracle).

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

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/40913

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

Reply via email to