Действительно плохая идея хранить изображения в БД, потому что они слишком большие, сложнее в обслуживании, сложнее работать и так далее.Вы должны хранить только путь к нему или имя файла.
Чтобы изменить размер изображения, вы можете использовать библиотеку PHP GD .Создайте его с помощью imagecreatefromstring()
и манипулируйте с помощью imagecopyresized()
или imagecopyresampled()
Пример из руководства :
// File and new size
$filename = 'test.jpg';
$percent = 0.5;
// Content type
header('Content-Type: image/jpeg');
// Get new sizes
list($width, $height) = getimagesize($filename);
$newwidth = $width * $percent;
$newheight = $height * $percent;
// Load
$thumb = imagecreatetruecolor($newwidth, $newheight);
$source = imagecreatefromjpeg($filename);
// Resize
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
// Output
imagejpeg($thumb);