Witam!
mam problem przy upload-zie
otóż chciałem zrobić upload plików na swojej stronie i wszystko chodzi jednakże chciałem zrobić zabezpieczenie dot. wczytywania dużych obrazków czyli np większych niż 640x460 w sieci wyszukałem informację jak to zrobić ale mój skrypt nie działa
oto mój kod w części gdzie chcę pobrać wielkość pliku
if (isset($_FILES['plik']['type']))
{
if(($_FILES['plik']['type']=='image/jpeg')or$_FILES['plik']['type']=='image/gif')
{
przeskalujObrazek($_FILES['plik']['name'],80,80);
move_uploaded_file($patch.$_FILES['plik']['tmp_name'].'/'.$_FILES['plik']['name'],
$_SERVER['DOCUMENT_ROOT'].'/test/upload/'.$_FILES['plik']['name']);
echo 'Odebrano plik. Początkowa nazwa: '.$_FILES['plik']['name'];
}
else
{
echo 'Błędny typ pliku. Dopuszczalne tylko pliki JPG i GIF';
}
a oto procedura która ma zmieniać wielkość pliku który jest za duży
function przeskalujObrazek($obrazek, $max_szerokosc, $max_wysokosc) {
$rozmiar = GetImagesSize($obrazek);
$szerokosc = $rozmiar[0];
$wysokosc = $rozmiar[1];
$wspolczynnik_x = $max_szerokosc / $szerokosc;
$wspolczynnik_y = $max_wysokosc / $wysokosc;
if (($szerokosc <= $max_szerokosc) && ($wysokosc <= $max_wysokosc)) {
$nowa_szerokosc = $szerokosc;
$nowa_wysokosc = $wysokosc;
}
else if (($wspolczynik_x * $wysokosc) < $max_wysokosc) {
$nowa_wysokosc = ceil($wspolczynnik_x * $wysokosc);
$nowa_szerokosc = $max_szerokosc;
}
else {
$nowa_szerokosc = ceil(wspolczynnik_y * $szerokosc);
$nowa_wysokosc = $max_wysokosc;
}
$zrd = ImageCreateFromJpeg($obrazek);
$prz = ImageCreate($nowa_szerokosc, $nowa_wysokosc);
ImageCopyResized($prz, $zrd, 0, 0, 0, 0, $nowa_szerokosc, $nowa_wysokosc, $szerokosc, $wysokosc);
header('Content-type: Image/jpeg');
ImageJpeg($prz, null, -1);
ImageDestroy($prz);
ImageDestroy($zrd);
}
po odpaleniu stronki i próbie uploadu pliku otrzymuję komunikat
Fatal error: Call to undefined function getimagessize() i ścieżka do pliku
sprawdziłem, że biblioteki GD są dostępne na serwerze bo doczytałem, ze taki komunikat z reguły pojawia się gdy ich nie ma
ktoś poratuje w potrzebie :) ?