|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2000-09-27 23:58 UTC] andi@php.net
[2000-10-09 10:46 UTC] koos at kzdoos dot xs4all dot nl
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Tue Oct 28 00:00:02 2025 UTC |
I store blobs in sybase IMAGE fields and when I retrieve them I only get the first 32768 nibbles and nothing more. I store them using: $fp=fopen($userfile,'r'); $blob=bin2hex(fread($fp,filesize($userfile))); $qid=sybase_query(" INSERT INTO blob(blobtype_id,title,body) VALUES ($mimetypeid,'$blobtitle',0x".$blob.")"); and retrieve them using $qid=sybase_query(" SELECT blobtype.mimetype,blob.body FROM blob,blobtype WHERE blob.blob_id=$blobobjectid AND blob.blobtype_id=blobtype.blobtype_id",$conid); if ($qid){ list($blobtype_mimetype,$blob_body)=sybase_fetch_row($qid); header("Content-Type: $blobtype_mimetype"); $bloblen=strlen($blob_body); echo pack("H".$bloblen,$blob_body); } using debug statements I found that $bloblen is never more then 32768, and the database contains bigger datalength's. 32768 is a round number so I guess I ran into some buffer size. What to do and how to get the bigger blobs. PHP 4.0.2, apache 3.0.12 ./configure --with-mysql --with-sybase-ct=/opt/sybase --with-apache=../apache_1.3.12 --enable-track-vars