Новичок
Покинул форум
Сообщений всего: 32
Дата рег-ции: Окт. 2012
Помог: 0 раз(а)
|
Доброго времени суток, подскажите, я давно сформировал вот такую систему загрузки изображений:
PHP:
скопировать код в буфер обмена
$array = array('jpg', 'JPG', 'png', 'gif'); $type = $_FILES['uploadfile']['type']; if ($type == 'image/jpeg') {$filetype = str_replace('image/','',$type);} $name = explode(".", $_FILES['uploadfile']['name']); $temp = $_FILES['uploadfile']['tmp_name']; { $uploaddir='partners/original'; $thumbdir='partners/thumb'; $uploadfile = $uploaddir.basename($_FILES['uploadfile']['name']); {echo 'ошибка передачи файла';} else { if(copy($temp,$uploadfile)) { {$renamefile = substr($uploadfile,11 ,-4 ); $newuploadfile = rename($uploadfile,$uploaddir.$uniqid.".jpg"); if(!empty($newuploadfile)) $width = $size[0]; $height = $size[1]; if($size[0]>100) { if ($width == $height) {$case=1;} if ($width > $height) {$case=2;} if ($width < $height) {$case=3;} switch ($case) {case 1: $newwidth=100; $newheight=100; $newimage = $newwidth."x".$newheight; break; case 3: $newheight=100; $ratio= $newheight / $height; $newwidth = round($width * $ratio); $newimage = $newwidth."x".$newheight; break; case 2: $newwidth=100; $ratio=$newwidth / $width; $newheight=$height * $ratio; $newimage = $newwidth."x".$newheight; break; } switch ($type) {case 'image/jpeg': imagecopyresized($thumb, $img, 0 , 0 , 0 , 0 , $newwidth, $newheight, $width, $height); imagejpeg ( $thumb, $thumbdir.$uniqid.".jpg",100 ); echo "Ваш файл был загружен со следующими параметрами:<br>Ширина ".$width." пикселей <br>Высота ".$height." пикселей <br><br>и приобразован в: ".$newimage."<br><br> "; break; } $ogede = $uploaddir.$uniqid.".jpg"; $gede = $thumbdir.$uniqid.".jpg"; $tes = "INSERT INTO generals_partners (pic1,pic2,title,link) VALUES ('".$gede."','".$ogede."','".$title."','".$link."')"; if($res) echo "Файл упешно загружен, загрузите еще!"; else echo "Путь не добавлен в базу данных, но файл загружен ".mysql_error().$about.$link.$city_array; } else echo "Качество файла удручает и печалит, а клиентов отпугнет, подищите пожалуйсто изображение более лучшего качества"; } else echo "Не получен размер изображения"; } else echo"Произошла ошибка с наречением файла новым именем :'("; } else echo "Файл не занесен в каталог с новым именем"; } else echo "Файл не загружен"; } } else echo "Неверное расширение файла, Загружать можно только фото (формата jpg)";
Но на данный момент у меня поднялся вопрос, превратить изображение в черно-белое, тобиш в первом коде, загружается картинка, далее она загружается в папку (original), также создается уменьшена копия, и также копируется в директорию (thumb), моя задача что бы урезанная картинка дублировалась в директорию к примеру (blackwithwhite) и там преобразовывалась в черно-белый вариант.
Я также нашел один из способов вот код:
( источник - http://js-php[dot]ru/web-development[dot][dot][dot]i-php-3-sposoba/ )
$img_src это путь к исходному изображению, в моем случае если продублировать урезанный вариант в директорию blackwithwhite и нужно указать путь к нему и пережать в черно-белый. Подскажите как склеить эти 2 кода? также приветствуются свои варианты =)
С благодарностью и уважением El Diablo.(Отредактировано автором: 04 Октября, 2013 - 13:17:21)
|