Forum FAQForum FAQSearchSearch MemberlistMemberlist Forum ignore listForum ignore list RegisterRegister ProfileProfile Log in to check your private messagesLog in to check your private messages Log inLog in
php upload - memory exhausted

 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    mi3dot.org Forum Index -> Server-side
View previous topic :: View next topic  
Author Message
budha



Joined: 02 Mar 2004
Posts: 1377
Location: Osijek

PostPosted: 22.06.2004 10:48    Post subject: php upload - memory exhausted Add user to your forum ignore list Reply with quote

imam problema kod uploada slika....

apache error.log kaze:
Code:
[Tue Jun 22 11:31:22 2004] [error] PHP Fatal error:  Allowed memory size of 16777216 bytes exhausted (tried to allocate 7168 bytes) in .../public_html/upload/uploader.php on line 49


49 linija je
Code:
ImageCreateFromJPEG ($imgfile);


uploadam 4 slike ukupne velicine 1,21 Mb

kada probam s manjim slikama (cca 200k), sve je u redu
MAX_FILE_SIZE u form je 16M, a phpinfo(); kaze da je post_max_size=8M, memory_limit=16M, upload_max_filesize=10M

any ideas?

_________________
I hate to advocate drugs, alcohol, violence, or insanity to anyone, but they've always worked for me.
Back to top
View user's profile Send private message Visit poster's website
zytzagoo
mi3.crew


Joined: 25 Aug 2003
Posts: 1842
Location: Zagreb, Hrvatska

PostPosted: 22.06.2004 11:35    Post subject: Add user to your forum ignore list Reply with quote

From the top of my head, mozda nakon sto kreiras slike ne oslobadjas vec alociranu memoriju, a php to ne napravi iz nekog razloga automatski, pa ti se kompletan buffer nakrca? Trebalo bi vidjeti ostatak koda ako je to slucaj, iako sumnjam...

Takodjer, moguce je da je jpg slika zeznuta, da joj fali EOI (end of image), evo funkcija iz php manual notesa kojom mozes provjeriti:
Code:

// this may help to fix the error
function check_jpeg($f, $fix=false ){
# [070203]
# check for jpeg file header and footer - also try to fix it
   if ( false !== (@$fd = fopen($f, 'r+b' )) ){
       if ( fread($fd,2)==chr(255).chr(216) ){
           fseek ( $fd, -2, SEEK_END );
           if ( fread($fd,2)==chr(255).chr(217) ){
               fclose($fd);
               return true;
           }else{
               if ( $fix && fwrite($fd,chr(255).chr(217)) ){return true;}
               fclose($fd);
               return false;
           }
       }else{fclose($fd); return false;}
   }else{
       return false;
   }
}


Takodjer, mozda je jpg u cmyku? Koliko se sjecam, zadnje kad sam radio sa gd-om, nije podrzavao jpegove u cmyku.

Jos jedna mogucnost, iako stvarno far fetched, ali mi trenutno imamo problem sa slicnim simptomima na jednom siteu, sve slike do 500kb rade ko podmazane, ali sve iznad ne prolazi - a pristup apache error_log-u nazalost nemamo i cekamo srijedu da ga mozda dobijemo... mozda je sistemski tmp dir u koji ide slika nakon uploada limitiran na fileove odredjene velicine, pa sistem zabrani staviti file unutra, a php odna ne moze do njega i baci error, jer alocira memoriju unutar loopa nekog - nemam pojma, lupam bezveze Smile

_________________
[+]I[+]am[+]my[+]own[+]religion[+]
Back to top
View user's profile Send private message Visit poster's website Twitter profile
budha



Joined: 02 Mar 2004
Posts: 1377
Location: Osijek

PostPosted: 22.06.2004 11:56    Post subject: Add user to your forum ignore list Reply with quote

kako oslooditi alociranu memoriju Question Embarassed

probao sam s 10-ak razlicitih slika (sa razlicitih izvora), i uvjek isto... slike su 350-550k

slike su u "true color RGB"...

sve sto mi apache doda u error.log, je linija iz 1. posta... mogu li gdje vidjeti ogranicenje tmp-a na serveru?

(ak imas volje i vremena, posaljem ti phpinfo(); i code na PM)

_________________
I hate to advocate drugs, alcohol, violence, or insanity to anyone, but they've always worked for me.
Back to top
View user's profile Send private message Visit poster's website
zytzagoo
mi3.crew


Joined: 25 Aug 2003
Posts: 1842
Location: Zagreb, Hrvatska

PostPosted: 22.06.2004 14:09    Post subject: Add user to your forum ignore list Reply with quote

Rado bih ti pomogao, ali ne znam da li mozes vidjet ogranicenje na tmp-u.

Jesi pokusao dignut memory_limit u php.ini-u na 32MB? Mozda ti to rijesi problem?

Koju verziju php-a koristis? Mozes mi mailat source i te 4 slike, pa da probam reproducirati problem kod sebe, mozda i meni pojede previse memorije? Zipni sve i mailaj na zytzagoo-at-mi3dot.org ako hoces...

_________________
[+]I[+]am[+]my[+]own[+]religion[+]
Back to top
View user's profile Send private message Visit poster's website Twitter profile
zytzagoo
mi3.crew


Joined: 25 Aug 2003
Posts: 1842
Location: Zagreb, Hrvatska

PostPosted: 22.06.2004 14:24    Post subject: Add user to your forum ignore list Reply with quote

budha wrote:
nemam ovlasti za to... hosting mi je na serveru jednog providera Sad

Mozes pokusati sa ini_set() funkcijom podesiti memory_limit na vise od defaulta prilikom pokretanja svoje skripte, ovisi jel to dozvoljeno na kod providera... http://hr.php.net/ini_set

Takodjer, imas funkciju kojom mozes provjeriti memory usage nakon svake linije. Baci oko ovdje: http://hr.php.net/manual/en/function.memory-get-usage.php

P.S.
Ovo stavljam ovdje makar je iz PM-a, za slucaj da netko ubuduce ima slican problem, pa da se ne ponavljamo Smile

_________________
[+]I[+]am[+]my[+]own[+]religion[+]
Back to top
View user's profile Send private message Visit poster's website Twitter profile
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    mi3dot.org Forum Index -> Server-side All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group