Beste Tweakers,
Ik zit met het volgende probleem:
Ik heb een script voor een CMS dat een bestand upload en vervolgens dit in twee formaten via GD verkleind en het originele bestand verwijderd.
Bij TransIP krijg ik steeds de volgende foutmelding:
Op regel 9 staat:
Niets aparts naar mijn weten, toch blijft hij hier vastlopen.
Om mijn post wat kracht bij te zetten voeg ik even de relevante code toe:
Deze functie wordt twee maal in hetzelfde script opgeroepen. Bij de tweede keer gaat het fout.
Zorg ik ervoor dat iets niet goed gedestroyed wordt? Of is er iets anders aan de haak?
Graag jullie reacties
Ik zit met het volgende probleem:
Ik heb een script voor een CMS dat een bestand upload en vervolgens dit in twee formaten via GD verkleind en het originele bestand verwijderd.
Bij TransIP krijg ik steeds de volgende foutmelding:
code:
1
| Fatal error: Allowed memory size of 10485760 bytes exhausted (tried to allocate 11264 bytes) in /sites/grondwerkenwaterbouw.nl/www/nieuw/fotoboek_functions.php on line 9 |
Op regel 9 staat:
code:
1
| $photo = imagecreatefromjpeg($bestandsnaam); |
Niets aparts naar mijn weten, toch blijft hij hier vastlopen.
Om mijn post wat kracht bij te zetten voeg ik even de relevante code toe:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
| <? function resizeimage($bestandsnaam, $grootte, $suffix) { ini_set("memory_limit","15M"); echo "tweede ronde..."; // De hoogte en breedte ophalen van het plaatje $path = ""; $bestandsnaam = $path . $bestandsnaam; $photo = imagecreatefromjpeg($bestandsnaam); $photo_dimensions_width = imagesx ($photo); $photo_dimensions_height = imagesy ($photo); // Berekenen breedte/hoogte: if ($photo_dimensions_width > $grootte OR $photo_dimensoons_height > $grootte) { if ($photo_dimensions_width == $photo_dimensions_height) { $thumb_dimensions_width = $grootte; $thumb_dimensions_height = $grootte; } elseif ($photo_dimensions_width > $photo_dimensions_height) { $value = $photo_dimensions_width / $grootte; $thumb_dimensions_width = $grootte; $thumb_dimensions_height = round ($photo_dimensions_height / $value); } else { $value = $photo_dimensions_height / $grootte; $thumb_dimensions_height = $grootte; $thumb_dimensions_width = round ($photo_dimensions_width / $value); } } else { $thumb_dimensions_width = $photo_dimensions_width; $thumb_dimensions_height = $photo_dimensions_height; } //Het plaatje inlezen in de variabele $photo+ $create_thumb = imagecreatetruecolor ($thumb_dimensions_width, $thumb_dimensions_height); imagecopyresampled ($create_thumb, $photo, 0, 0, 0, 0, $thumb_dimensions_width, $thumb_dimensions_height, $photo_dimensions_width, $photo_dimensions_height); ImageJpeg($create_thumb,$bestandsnaam.$suffix,90); Imagedestroy($photo); Imagedestroy($create_thumb); unset($photo, $create_thumb); } ?> |
Deze functie wordt twee maal in hetzelfde script opgeroepen. Bij de tweede keer gaat het fout.
code:
1
2
| resizeimage($bronvanhetbestand, "100", "_klein.jpg"); resizeimage($bronvanhetbestand, "500", "_normal.jpg"); |
Zorg ik ervoor dat iets niet goed gedestroyed wordt? Of is er iets anders aan de haak?
Graag jullie reacties