Autor Zpráva
Darius
Profil *
Dobrý den, vytvořil sem si fotogalerii, funguje dá se říct dobře, ale u některých obrázku mi to píše:

Fatal error: Allowed memory size of 50331648 bytes exhausted (tried to allocate 19968 bytes) in /data/nazevdomény/web/admin/page/galerie.php on line 30

- Myslel sem si, že problém vězí, že obrázek je příliš veliký, ale i u některých obrázků třeba 500 kb nejdou nahrát a nějaký 1MB jdou nahrát
- Na hostingu prý problém neni, žádné omezení není...

Používám kod:

if (is_uploaded_file($_FILES["addimg"]["tmp_name"])) {
    $path_parts = pathinfo($_FILES["addimg"]["name"]);
if (in_array(strtolower($path_parts['extension']), 
               array('jpg','gif','png'))) {
    $name= $addid.".".$path_parts['extension'];
    $func_copy = copy($_FILES["addimg"]["tmp_name"], "../img/gallery/$name");
        list($width, $height) = image_shrink_size($_FILES["addimg"]["tmp_name"], 200, 150);
image_resize($_FILES["addimg"]["tmp_name"], "../img/gallery/miniatura_$name", $width, $height); 
} else {
    error("Lze nahrát pouze jpg/gif a png obrázky!");
}
}

Nevíte někdo včem je problém?
MichalKos
Profil
Podle mě jde o dostupnou paměť PHP (memory_limit) myslím že to bývá na 32mb mě to jednou taky vyhodilo toto požádal jsem o navýšení a měl sem klid, ale jsem teprv začátečník takže si nejsem jist jestli to je 100% ono..
Alphard
Profil
MichalKos:
Máte pravdu.

Darius:
Nezáleží na datové velikost zkomprimovaného obrázku, ale na fyzické velikosti (počet pixelů), od toho se pak odvíjí paměťová náročnost. Buď zvýšit memory limit, nebo zkuste imagick, ten do toho limitu nespadá.
Darius
Profil *
MichalKos, Alphard:
Děkuji za info :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: