Я пытаюсь изменить размер изображения перед загрузкой.Я добавил строку $img = resize_image($_FILES['Image']['tmp_name'], 200, 200);
к коду ниже.Код работает правильно, чтобы загрузить.Сейчас я просто пытаюсь отрегулировать размер изображения.Я не уверен, как взять возвращаемое значение $ img и сохранить его с помощью файла move_uploaded_file.Когда я пытаюсь заменить $_FILES['Image']['tmp_name]
на $img
, я получаю ошибку разбора.Я также добавил функцию resize_image
, чтобы вы могли видеть, что именно она возвращает.
{
$image_name= $_FILES['Image']['name'];
$img = resize_image($_FILES['Image']['tmp_name'], 200, 200);
$image_name = $picCounter .$firstName .$image_name;
move_uploaded_file( $_FILES['Image']['tmp_name'], "IMG/$image_name");
correctImageOrientation("IMG/$image_name");
$image_path = "/IMG/" .$image_name;
$picCounter = $picCounter++;
$sql = ("UPDATE LoginInformation SET PicCounter = PicCounter + 1 WHERE Email = '" . $useremail . "'" );
mysqli_query($conn, $sql);
}
else
{
$image_path = "/IMG/square-image.png";
}
здесь есть функция изменения размера
function resize_image($file, $w, $h, $crop=FALSE) {
list($width, $height) = getimagesize($file);
$r = $width / $height;
if ($crop) {
if ($width > $height) {
$width = ceil($width-($width*abs($r-$w/$h)));
} else {
$height = ceil($height-($height*abs($r-$w/$h)));
}
$newwidth = $w;
$newheight = $h;
} else {
if ($w/$h > $r) {
$newwidth = $h*$r;
$newheight = $h;
} else {
$newheight = $w/$r;
$newwidth = $w;
}
}
$src = imagecreatefromjpeg($file);
$dst = imagecreatetruecolor($newwidth, $newheight);
imagecopyresampled($dst, $src, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
return $dst;
}