GDLib problem med stort billede

Tags:    php

Jeg er ved at lave et galleri i php, og har derfor lavet et script som bliver kørt, når man uploader et billed.

Scriptet uploader billedet, og resizer det til 140x100px(skal bruges som thumb), vha. GDLib, og gemmer det i en mappe ved siden af.
Men problemet er at hvis jeg uploader et billede på over 190kb, så får jeg en fatal error, når den vil til at resize billedet

Scriptet virker perfekt, hvis bare billedet ikke er for stort, men det er lidt træls at skulle resize nogen billeder rigtig langt ned i størrelse.

Her er fejlen:
"Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 9088 bytes) in /sti/til/mit/webhotel/galleri/admin_galleri_upload_picture.php on line 104"

Mit webhotel ligger på Web10..
Og jeg kan se i phpinfo "memory_limit" er sat til "8M"

Er der nogen der ved hvordan jeg kan få løst det her problem? Det ville bare være dejligt!

Her er scriptet:
Fold kodeboks ind/udKode 




3 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
User
Bruger #31 @ 03.01.07 12:36
8MB er faktisk ikke ret stort, når man laver det om til RAW i stedet for f.eks. JPEG.

Kan give et eks:
Har et jpg billede som fylder 13,7 KB i "pakket" form (jpg), men når det loades af f.eks. Firefox, IE eller GIMP, så fylder den lige pludselig 596KB i hukommelsen.
Hvad kan vi så bruge det til? Jo vi kan jo lige begynde at regne lidt på det, 596/13,7 = 43,5.
43,5*190 = 8265kb

Ud fra det, kan du se at 190kb fylder omkring de 8MB i hukommelsen.

For at fixe dit problem er du derfor nødtil at sætte et højere memory_limit for PHP, men da du er på Web10(Public host) kan det nok ikke lade sig gøre, prøv at spørg deres support, men tvivler på de vil lade dig ændre det(Kræver safe_mode off).

Det er dog ikke altid helt at regne med, men håber det gav lidt indblik i dit problem. :)



Indlæg senest redigeret d. 03.01.2007 12:39 af Bruger #31
KAn det være din udbyder ikke vil have du oploader mere i et script ?



Tjae, men kan det passe, at man ikke engang kan redigere et halv-stort billede i GDLib? :O



t