Ответов: 5 Просмотров: 6252
|
CODE ( htmlphp):
скопировать код в буфер обмена
<form name="upload" action="index.php" enctype="multipart/form-data" method="post"> <label>Выберите картинку</label> <input type="hidden" name="MAX_FILE_SIZE" value="102400" /> <input type="file" name="uploadimg" class="input_file" /> <label>Введите Имя Картинки</label> <input type="text" name="name"/> <input type="submit" name="Submit" value="Добавить картинку" class="submit"> </form> <?php //удаляем пробелы из введенного имени while(strpos($name," ")!==false) { } // меняем англ буквы на Русские $name=strtr($name,"абвгдеёзийклмнопрстуфхъыэ_","abvgdeeziyklmnoprstufh'iei"); // <----- строчные $name=strtr($name,"АБВГДЕЁЗИЙКЛМНОПРСТУФХЪЫЭ_","ABVGDEEZIYKLMNOPRSTUFH'IEI"); // <----- ПРОПИСНЫЕ "ж"=>"zh", "ц"=>"ts", "ч"=>"ch", "ш"=>"sh", "щ"=>"shch","ь"=>"", "ю"=>"yu", "я"=>"ya", "Ж"=>"ZH", "Ц"=>"TS", "Ч"=>"CH", "Ш"=>"SH", "Щ"=>"SHCH","Ь"=>"", "Ю"=>"YU", "Я"=>"YA", "ї"=>"i", "Ї"=>"Yi", "є"=>"ie", "Є"=>"Ye" ) ); //Проверка, действительно ли загруженный файл является изображением $imageinfo = getimagesize($_FILES['uploadimg']['tmp_name']); if($imageinfo['mime'] != 'image/gif' && $imageinfo['mime'] != 'image/jpeg' && $imageinfo['mime'] !='image/png') { print '<div class="msg">Загруженный файл не является изображением, mime = ' . $imageinfo['mime'] . '</div>'; } //Сохранение загруженного изображения с расширением, которое возвращает функция getimagesize() //Расширение изображения $mime=explode("/",$imageinfo["mime"]); //Задаем имя картинки //$namefile=explode(".",$_FILES["uploadimg"]["name"]); - исходное имя файла //Задаем путь к директории $uploaddir = "W:/home/site.ru/www/img/"; //Полный путь $relativedir = "../img/"; //Относительный путь //Функция, перемещает файл из временной, в указанную вами папку if (move_uploaded_file($_FILES["uploadimg"]["tmp_name"], $uploaddir.$namefile.".".$mime[1])) { $namefileBig=($namefile.".".$mime[1]); print "Изображение успешно загружено. Его имя - " . $namefileBig; //подключение функции уменьшения размеров $src_name = ($uploaddir.$namefileBig); $dst_name = ($uploaddir.$namefile."_small.".$mime[1]); $dst_name2 = ($uploaddir.$namefile."_mid.".$mime[1]); $size = 137; //размер маленькой картинки - ширина $size2 = 210; //размер средней картинки - ширина //Большая картинка остается с исходника $small_pic = ($relativedir.$namefile."_small.".$mime[1]); //формируем относительный путь маленькой картинки, добавляя в имя на конец _small $mid_pic = ($relativedir.$namefile."_mid.".$mime[1]); //формируем относительный путь средней картинки добавляя в имя на конец _mid $big_pic = ($relativedir.$namefileBig); //формируем относительный путь большой картинки - имя остается не изменным if($imageinfo['mime'] != 'image/gif' && $imageinfo['mime'] != 'image/jpeg' && $imageinfo['mime'] !='image/png') { print "Загруженный файл не является изображением"; } else {echo '<p>file - ' . $imageinfo['mime'] .'</p>';} if ( $src_h > $src_w ) { $dst_h = $size; $dst_w = ceil(($dst_h / $src_h) * $src_w); $dst_h2 = $size2; $dst_w2 = ceil(($dst_h2 / $src_h) * $src_w); } else { $dst_w = $size; $dst_h = ceil(($dst_w / $src_w) * $src_h); $dst_w2 = $size2; $dst_h2 = ceil(($dst_w2 / $src_w) * $src_h); } if ($imageinfo['mime'] == 'image/jpeg' or $imageinfo['mime'] == 'image/jpg') { } else { if ($imageinfo['mime'] = 'image/png') { echo '<p>Type - PNG</p>'; $src_im = imagecreatefrompng($src_name); //создаем ресурс из исходного изображения - в формате пнг $dst_im = imagecreatetruecolor($dst_w, $dst_h); //создаем новый ресурс с нужной шириной и высотой (полноцветное) } else {echo 'Произошла ошибка при уменьшении';} } } else{ echo 'Произошла ошибка'; } ?>
Этот скрипт пропорционально уменьшает. Может кому пригодится... |