Autor Zpráva
voznix
Profil
Dobrý den, mám administraci a tam mám uploadování obrázků. potřebuji při uploadu udělat zmenšeninu. mám na to script:

<?
function Resizer(
   $filename, //cesta k souboru, ktery chcete zmensit
   $copypath, //cesta, kam zmenseny soubor ulozit
   $MaxWidth,  //maximalni sirka zmenseneho obrazku
   $MaxHeight) //maximalni vyska zmenseneho obrazku
{ 
  //zjistime puvodni velikost obrazku
  list($OrigWidth, $OrigHeight) 
    = getimagesize($filename);
  //hodnota 0 v parametrech MaxWidth resp. MaxHeight znamena,  
  //ze sirka resp. vyska vysledku muze byt libovolna
  if ($MaxWidth == 0) 
    $MaxWidth = $OrigWidth;
  if ($MaxHeight == 0)
    $MaxHeight = $OrigHeight;
  
  //nyni vypocitam pomer zmenseni
  $pw = $OrigWidth / $MaxWidth;
  $ph = $OrigHeight / $MaxHeight;
  
  if ($pw > $ph)
      $p = $pw;
  else
      $p = $ph;
  if ($p < 1)
      $p = 1;
  
  //v p ted mame pomer pro zmenseni
  //vypocitame vysku a sirku zmenseneho obrazku
  $NewWidth = (int)$OrigWidth / $p;
  $NewHeight = (int)$OrigHeight / $p;
  
  //vytvorime novy obrazek pozadovane vysky a sirky
  $image_p = imagecreatetruecolor($NewWidth, $NewHeight);
  //otevreme puvodni obrazek se souboru
  $image = imagecreatefromjpeg($filename);
  //a okopirujeme zmenseny puvodni obrazek do noveho
  imagecopyresampled($image_p, 
                     $image, 0, 0, 0, 0, 
                     $NewWidth, $NewHeight, 
                     $OrigWidth, $OrigHeight);
  //a ulozime 
  imagejpeg($image_p, $copypath, 100);
}
?>


a pak mám v uploadu todle:
<? Resizer("$soubor_name","maly_$soubor_name",50,50); ?>

funguje mi to ale když jich potřebuju uploadovat 20, a nakopíruju todle 20x, tak se mi vykoná jen uploadování, ale sekne se to při tvoření obrázku a nevytvoří se ani jeden ani neproběhnou scripty za tím. Nevíte, čím to může být?
Stromik
Profil *
setTimelimit(0);
nebo memory limit..
voznix
Profil
stále nefunguje...
bohyn
Profil
Pridej na konec fce:
imagedestroy($image);
imagedestroy($image_p);

GD knihovna je pomerne narocna na pamet takze je treba uvolnovat pamet.
voznix
Profil
Nakonec každého <? Resizer("$soubor_name","maly_$soubor_name",50,50); ?> ???
bohyn
Profil
na konec
function resizer() {
  ...
  imagedestroy($image);
  imagedestroy($image_p);
}
voznix
Profil
bohužel stále nic. Prostě se jenom nahrajou obrázky na server, ale už se nevytvoří miniatury a nevloží se do databáze data. už nevím
bohyn
Profil
A kdyz zapnes zobrazovani chyb tak taky nic?
ini_set("error_reporting", E_ALL & ~E_NOTICE);
ini_set("display_errors", "on");
srigi
Profil
voznix
Ak by si s tym nepohol, skus pouzit overenu triedu na resize.
voznix
Profil
tak jsem zkusil oboje, ale nic neuspělo. Žádná chyba nevyskočila, to od srigi dopadlo tak, že se nic nenačetlo. Jen bílá prázdná stránka. Zkusím ten script napsat znovu:(
voznix
Profil
už to funguje, děkuji

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:

0