Witam, posiadam kod w CI do zmiany rozmiarów obrazków w 'locie'
<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); class _images extends CI_Controller {
public function index()
{
}
public function resize_news()
{
$query = mysql_query("SELECT * FROM s_news WHERE id='".$this->uri->segment(4)."'");
$plik = $row['avatar'];
header('Content-Type: image/png'); //wysyłamy nagłówek
if($this->uri->segment(3) == 'large'){ $szerokosc = 240; $wysokosc = 180;}
if($this->uri->segment(3) == 'medium'){ $szerokosc = 120; $wysokosc = 90;}
if($this->uri->segment(3) == 'small'){ $szerokosc = 60; $wysokosc = 45; }
// rozszerzeniem pliku jest ostatni element tablicy $i
// jeśli nie mamy jpega, gifa lub png zwracamy false.
if($rozszerzenie !== 'jpg' &&
$rozszerzenie !== 'gif' &&
$rozszerzenie !== 'png') {
return false;
}
// pobieramy rozmiary obrazka
// obliczamy proporcje boków
$proporcje = $img_wys / $img_szer;
// na tej podstawie obliczamy wysokość
$wysokosc = $szerokosc * $proporcje;
// tworzymy nowy obrazek o zadanym rozmiarze
// korzystamy tu z funkcji biblioteki GD
// która musi być dołączona do twojej instalacji PHP,
// najpierw tworzymy canvas.
$canvas = imagecreatetruecolor($szerokosc, $wysokosc);
switch($rozszerzenie) {
case 'jpg':
$org = imagecreatefromjpeg($plik);
break;
case 'gif':
$org = imagecreatefromgif($plik);
break;
case 'png':
$org = imagecreatefrompng($plik);
break;
}
// kopiujemy obraz na nowy canvas
imagecopyresampled($canvas, $org, 0, 0, 0, 0, $szerokosc, $wysokosc, $img_szer, $img_wys);
imagejpeg($canvas, 95);
} else {
echo 'obrazek nie istnieje'; }
}
}
?>
nie wiem dlaczego, tek kod nie działa (nawet przykłady z php.net).
jakieś wskazówki ?