By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,928 Members | 1,590 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,928 IT Pros & Developers. It's quick & easy.

GD Strange error

P: n/a
pmz
Dear Group,

I'm not sure what is going one with my software, but something really
strange.
I'm storing in BLOB in MySQL data of an image, which I display like:

header("Content-Type: image/png");
echo base64_decode($blobColumnData);

Firefox/IE says, that the image cannot be displayed because it
contains errors. I've tried setting header to image/jpeg, etc, with no
results.
At the end, I've just tried fwrite() the 'base64_decode($blobData)'
into a file and display it in Gimp - with no problems, with no
difference jpeg or png.

What's wrong? Where shall I look for problems?

Some system details:
PHP Details:
PHP 5.2.3 with Suhosin-Patch 0.9.6.2 (cli) (built: Jul 27 2007
01:29:42)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies

GD Details:
gd-2.0.33_4,1
php5-gd-5.2.0
png-1.2.14
jpeg-6b_4

OS Details:
FreeBSD drum.phpdev 6.2-RELEASE FreeBSD 6.2-RELEASE

Thank you for help!

All the best,
Przemek M. Zawada

Aug 6 '07 #1
Share this Question
Share on Google+
4 Replies


P: n/a
pmz wrote:
Dear Group,

I'm not sure what is going one with my software, but something really
strange.
I'm storing in BLOB in MySQL data of an image, which I display like:

header("Content-Type: image/png");
echo base64_decode($blobColumnData);

Firefox/IE says, that the image cannot be displayed because it
contains errors. I've tried setting header to image/jpeg, etc, with no
results.
At the end, I've just tried fwrite() the 'base64_decode($blobData)'
into a file and display it in Gimp - with no problems, with no
difference jpeg or png.

What's wrong? Where shall I look for problems?

Some system details:
PHP Details:
PHP 5.2.3 with Suhosin-Patch 0.9.6.2 (cli) (built: Jul 27 2007
01:29:42)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies

GD Details:
gd-2.0.33_4,1
php5-gd-5.2.0
png-1.2.14
jpeg-6b_4

OS Details:
FreeBSD drum.phpdev 6.2-RELEASE FreeBSD 6.2-RELEASE

Thank you for help!

All the best,
Przemek M. Zawada
Why are you calling base64_decode()? Did you base64_encode() the image
before storing it in the database? If so, why?

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attglobal.net
==================
Aug 6 '07 #2

P: n/a
pmz
On 6 Sie, 13:35, Jerry Stuckle <jstuck...@attglobal.netwrote:
pmz wrote:
Dear Group,
I'm not sure what is going one with my software, but something really
strange.
I'm storing in BLOB in MySQL data of an image, which I display like:
header("Content-Type: image/png");
echo base64_decode($blobColumnData);
Firefox/IE says, that the image cannot be displayed because it
contains errors. I've tried setting header to image/jpeg, etc, with no
results.
At the end, I've just tried fwrite() the 'base64_decode($blobData)'
into a file and display it in Gimp - with no problems, with no
difference jpeg or png.
What's wrong? Where shall I look for problems?
Some system details:
PHP Details:
PHP 5.2.3 with Suhosin-Patch 0.9.6.2 (cli) (built: Jul 27 2007
01:29:42)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
GD Details:
gd-2.0.33_4,1
php5-gd-5.2.0
png-1.2.14
jpeg-6b_4
OS Details:
FreeBSD drum.phpdev 6.2-RELEASE FreeBSD 6.2-RELEASE
Thank you for help!
All the best,
Przemek M. Zawada

Why are you calling base64_decode()? Did you base64_encode() the image
before storing it in the database? If so, why?

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@attglobal.net
==================

Dear Jerry,

I did call the base64_encode before storing the image in the database,
because as I mentioned before, when I 'save' the image with fwrite(),
the image opened with Gimp is perfectly working.

Sample:

$Data = base64_decode(image_from_db_encoded);

fwrite($fh, $Data);

And this works fine:
# gimp myimage.jpg &

If I do so:

header("Content-Type: image/jpeg");
print $Data;

It does not work.

For example, I've tested with sample image creation with gd, such as:
$I = imagecreate(256, 256);
$Bg = imagecolorallocate($I, 255, 0, 0);
imagejpeg($I);

It also does not work, why?
The GD is installed, even updated, phpinfo() sayz that everything is
okay, what is happening?

All the best,
Przemek

Aug 6 '07 #3

P: n/a
pmz
On 6 Sie, 13:43, pmz <przemek.zaw...@gmail.comwrote:
On 6 Sie, 13:35, Jerry Stuckle <jstuck...@attglobal.netwrote:
pmz wrote:
Dear Group,
I'm not sure what is going one with my software, but something really
strange.
I'm storing in BLOB in MySQL data of an image, which I display like:
header("Content-Type: image/png");
echo base64_decode($blobColumnData);
Firefox/IE says, that the image cannot be displayed because it
contains errors. I've tried setting header to image/jpeg, etc, with no
results.
At the end, I've just tried fwrite() the 'base64_decode($blobData)'
into a file and display it in Gimp - with no problems, with no
difference jpeg or png.
What's wrong? Where shall I look for problems?
Some system details:
PHP Details:
PHP 5.2.3 with Suhosin-Patch 0.9.6.2 (cli) (built: Jul 27 2007
01:29:42)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
GD Details:
gd-2.0.33_4,1
php5-gd-5.2.0
png-1.2.14
jpeg-6b_4
OS Details:
FreeBSD drum.phpdev 6.2-RELEASE FreeBSD 6.2-RELEASE
Thank you for help!
All the best,
Przemek M. Zawada
Why are you calling base64_decode()? Did you base64_encode() the image
before storing it in the database? If so, why?
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@attglobal.net
==================

Dear Jerry,

I did call the base64_encode before storing the image in the database,
because as I mentioned before, when I 'save' the image with fwrite(),
the image opened with Gimp is perfectly working.

Sample:

$Data = base64_decode(image_from_db_encoded);

fwrite($fh, $Data);

And this works fine:
# gimp myimage.jpg &

If I do so:

header("Content-Type: image/jpeg");
print $Data;

It does not work.

For example, I've tested with sample image creation with gd, such as:
$I = imagecreate(256, 256);
$Bg = imagecolorallocate($I, 255, 0, 0);
imagejpeg($I);

It also does not work, why?
The GD is installed, even updated, phpinfo() sayz that everything is
okay, what is happening?

All the best,
Przemek

PS. I've taken the example from php.net (maybe I'm a bit tired after
working 48h) but it also gave me nothing! Just: "The image "..."
cannot be displayed, because it contains errors. Everything which is
directly connected with it (such as png/jpg libs) I've updated,
because I thought that something got damaged.

Aug 6 '07 #4

P: n/a
pmz wrote:
On 6 Sie, 13:35, Jerry Stuckle <jstuck...@attglobal.netwrote:
>pmz wrote:
>>Dear Group,
I'm not sure what is going one with my software, but something really
strange.
I'm storing in BLOB in MySQL data of an image, which I display like:
header("Content-Type: image/png");
echo base64_decode($blobColumnData);
Firefox/IE says, that the image cannot be displayed because it
contains errors. I've tried setting header to image/jpeg, etc, with no
results.
At the end, I've just tried fwrite() the 'base64_decode($blobData)'
into a file and display it in Gimp - with no problems, with no
difference jpeg or png.
What's wrong? Where shall I look for problems?
Some system details:
PHP Details:
PHP 5.2.3 with Suhosin-Patch 0.9.6.2 (cli) (built: Jul 27 2007
01:29:42)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
GD Details:
gd-2.0.33_4,1
php5-gd-5.2.0
png-1.2.14
jpeg-6b_4
OS Details:
FreeBSD drum.phpdev 6.2-RELEASE FreeBSD 6.2-RELEASE
Thank you for help!
All the best,
Przemek M. Zawada
Why are you calling base64_decode()? Did you base64_encode() the image
before storing it in the database? If so, why?

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@attglobal.net
==================


Dear Jerry,

I did call the base64_encode before storing the image in the database,
because as I mentioned before, when I 'save' the image with fwrite(),
the image opened with Gimp is perfectly working.

Sample:

$Data = base64_decode(image_from_db_encoded);

fwrite($fh, $Data);

And this works fine:
# gimp myimage.jpg &

If I do so:

header("Content-Type: image/jpeg");
print $Data;

It does not work.

For example, I've tested with sample image creation with gd, such as:
$I = imagecreate(256, 256);
$Bg = imagecolorallocate($I, 255, 0, 0);
imagejpeg($I);

It also does not work, why?
The GD is installed, even updated, phpinfo() sayz that everything is
okay, what is happening?

All the best,
Przemek
Well, first of all, there's no need to base64_encode/decode the data; it
works fine in a blog column without the extra overhead.

Do you have error reporting enabled and are you displaying errors? If
not, please do so. If so, are you seeing any errors?

Also, what's your actual failing code? Excerpts and pseudo-code don't
often solve problems.

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attglobal.net
==================
Aug 6 '07 #5

This discussion thread is closed

Replies have been disabled for this discussion.