|
Posted by pmz on 08/06/07 12:35
On 6 Sie, 14:16, Jerry Stuckle <jstuck...@attglobal.net> wrote:
> pmz wrote:
> > On 6 Sie, 13:35, Jerry Stuckle <jstuck...@attglobal.net> wrote:
> >> 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.
> jstuck...@attglobal.net
> ==================
Dear Jerry,
As you suggested, I've changed error_reporting to E_ALL, and when I
have removed all 'my coding', such as libs, etc. The GD graphich
appeared on my screen (as in php.net example).
I have included 'my coding' and I have received some notices, but no
warnings or errors, ie.:
Notice: Undefined property: DOMText::$tagName in /usr/home/pmz/
Wenagroup/order.wena.local/Libs/SM_MySQL_XML.php on line 15
(lots of them - like ~20 - because it reads the MySQL config file)
How it is happening, that it is blocking my GD graphics? The problem
on line 15 is the following:
foreach($documentElement->childNodes as $Node1)
switch($Node1->tagName) // line 15
{
// ...
}
How may I solve it? I've tryed "if's" with != null, or even empty() or
isset(), but it does not changed anything..
Thank you for your attention to my problems.
All the best,
Przemek M. Zawada
[Back to original message]
|