Обрезка и растягивание изображения

404
23 декабря 2016, 16:48

Есть скрипт который загружает картинки в на сервер и путь в бд прописывает. Подскажите пожалуйста как сделать так, чтобы каждое загружаемое изображение автоматические делалось 200*200, чтобы вручную постоянно это не проделывать постоянно? есть WideImage как его можно реализовать в данном коде

<html>
 <head>
 <title>Добавление obj файлла</title>
</head>
<body>
 <form action="load.php" enctype="multipart/form-data" method="post">  
 <input type="file" name="img">
  <a><input type="submit" name="add" value="Загрузить"></a>
 <a href="index.php">Вернуться</a>
 </form>
<?php
include('set.php');
include ('lib/WideImage.php');

$path = 'scr/';
$ext = array_pop(explode('.',$_FILES['img']['name']));
$pic = array_pop(explode('.',$_FILES['img']['name']));
$new_name = date("d.m.Y").'-'.$_FILES['img']['name'];
$full_path = $path.$new_name; 
echo $new_name;
echo '<br>';
echo $full_path;

if($_FILES['img']['error'] == 0){
if (($pic!="jpg")  &&  ($pic!="png")  &&  ($pic!="jpeg")){
    echo "Файл не был загружен, загрузите файл с расширением .jpeg/jpg/png";
exit();  
 }
else {
    $image = WideImage::load($new_name);
    $resized = $image->resize(200, 200);
    $resized->saveToFile($full_path);

if(move_uploaded_file($_FILES['img']['tmp_name'], $full_path)){
    }
    }
}

if(isset($_POST['add']))
{  
    $result = mysql_query('
INSERT INTO obj
(`img`)
VALUES
("' . $full_path . '")
');
    mysql_close;
    echo "Картинка добавлена";
}

?>

Выдает такую ошибку

Warning: file_get_contents(21.12.2016-1.jpg) [function.file-get-contents]: failed to open stream: No such file or directory in Q:\home\localhost\www\test\lib\WideImage.php on line 195

Warning: unpack() [function.unpack]: Type c: not enough input, need 1, have 0 in Q:\home\localhost\www\test\lib\vendor\de77\TGA.php on line 93

Fatal error: Uncaught exception 'WideImage_InvalidImageSourceException' with message 'File '21.12.2016-1.jpg' appears to be an invalid image source.' in Q:\home\localhost\www\test\lib\WideImage.php:226 Stack trace: #0 [internal function]: WideImage::loadFromFile('21.12.2016-1.jp...') #1 Q:\home\localhost\www\test\lib\WideImage.php(184): call_user_func(Array, '21.12.2016-1.jp...') #2 Q:\home\localhost\www\test\load.php(42): WideImage::load('21.12.2016-1.jp...') #3 {main} thrown in Q:\home\localhost\www\test\lib\WideImage.php on line 226

Answer 1

Нашел ответ на ваш вопрос Здесь

$res = $pic->resize(250, 1000);

Для нее потребуется PHP 5.2+ и GD библиотека WideImage

READ ALSO
Помогите распарсить строку [требует правки]

Помогите распарсить строку [требует правки]

Требуется извлечь из всех узлов JSON-строки значения с идентификатором "text" с целью собрать на выходе выражение (предложение)

375
PHP header или другой способ редиректа

PHP header или другой способ редиректа

Есть такой код, который не работаетКласс работает правильно, проблема только в функции header();

357
Рабочий код не работает на домашнем сервере

Рабочий код не работает на домашнем сервере

На хостинге этот код работает как часы, на домашнем в браузере ошибка 500 в приложении которое отправляет запрос ошибка 501

376
Создание хлебных крошек | Zend framework

Создание хлебных крошек | Zend framework

Имею в файле конфигураций описанную "навигацию":

368