ExBB Community ExBB Community
 Сайт проекта ExBB Общение объединяет!
Войдите на форум при помощиВойти через loginza
 Чат на форуме      Помощь      Поиск      Пользователи     BanList BanList


 Страниц (1): [1]   

> Без описания
Виктория
Отправлено: 27 ноября 2009 — 18:43
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 22
Дата рег-ции: Нояб. 2009  
Откуда: Россия, Пермь
Репутация: 0




Я тут наткнулась вот на что, и попыталась присобачить это в include/upload.class.php куда-то сюда:

CODE:
function IMAGE($_width,$_height,$dest,$storage) {

list($width, $height) = $this->_IMAGE;
if ($width > $_width || $height > $_height) {
define("UP_ERROR",'Ошибка загрузки файла! Ширина или высота закачиваемого изображения больше разрешенных на форуме!');
return FALSE;


Ничего не вышло...

Вот исходный код:
Цитата:
Форма:



CODE:
<form method="POST" action ="<?php echo($_SERVER['PHP_SELF'])?>">
<input type="file" name="myfile" accept="image/*">
<input type='submit' name='submited' value="Отправить">
</form>




сначало загрузка изображения:

CODE:
if(isset($_FILES["myfile"][$i]))
{
if (!ereg("image", $_FILES["myfile"]["type"][$i])){
echo "<b>Файл не является изображением!!! <b>";
error_add_log($ip_client, 'Файл не является изображением!!! Пользователь('.$autor.')', $link);
exit();
}
else
$myfile = $_FILES["myfile"]["tmp_name"][$i];
$myfile_name = $_FILES["myfile"]["name"][$i];
$myfile_size = $_FILES["myfile"]["size"][$i];
$myfile_type = $_FILES["myfile"]["type"][$i];
$error_flag = $_FILES["myfile"]["error"][$i];
// Если ошибок не было
if($error_flag == 0)
{

// Получаем содержимое файла
$fp = fopen($myfile,"r");
$content = fread($fp, filesize($myfile));
fclose($fp);
$file='./foto/'.$myfile_name;
move_uploaded_file ($myfile, $file);

}



Функция уменьшения JPEG

CODE:
function resize_jpeg($un_file, $after_resize, $width){
//chmod ($un_file, 0777);

$SOURCE=$un_file; // исходный файл
$TARGET=$after_resize; // имя файла для "превьюшки"
$NEWX=100; // ширина "превьюшки"
$NEWY=100; // высота "превьюшки"

$size = getimagesize($SOURCE);
if ($size === false) die ('Bad image file!');


$source = imagecreatefromjpeg($SOURCE)
or die('Cannot load original JPEG');
// вычисление пропорций
if ($size[0]>$size[1]){
$ratio = $size[0]/$width;
} else {
$ratio = $size[1]/$width;
}
$X = round($size[0]/$ratio);
$Y = round($size[1]/$ratio);
// Создаем новое изображение
$target = imagecreatetruecolor($X, $Y);

// Копируем существующее изображение в новое с изменением размера:
imagecopyresampled(
$target, // Идентификатор нового изображения
$source, // Идентификатор исходного изображения
0,0, // Координаты (x,y) верхнего левого угла
// в новом изображении
0,0, // Координаты (x,y) верхнего левого угла копируемого
// блока существующего изображения
$X, // Новая ширина копируемого блока
$Y, // Новая высота копируемого блока
$size[0], // Ширина исходного копируемого блока
$size[1] // Высота исходного копируемого блока
);
imagejpeg($target, $TARGET, 100);
return $TARGET;
// Как всегда, не забываем:
imagedestroy($target);
imagedestroy($source);

}



теперь проверяем размер если больше то уменьшаем:
CODE:


$size = getimagesize($file);

if ($size[0]<800) || ($size[0]<600)){
if (($myfile_type=='image/jpeg') or ($myfile_type=='image/pjpeg')){
$medium= resize_jpeg($file, $file, 600);
} else {
print "image is not JPG";}
}




и вывод самого изображения :

CODE:

$size = getimagesize($file);
print $size[0].'*'.$size[1].'<br>';
print '<img border=0 src=$file>';


Мальчики, может ктонибудь поможет? Я никому не нужен
 
 
yura3d
Отправлено: 28 ноября 2009 — 11:16
Post Id


Пользователь
ExBB Team
ExBB Developer
ExBB Mods Author


Покинул форум
Сообщений всего: 3394
Дата рег-ции: Февр. 2009  
Откуда: Минск, Беларусь
Репутация: 353




Виктория пишет:
Мальчики, может ктонибудь поможет? Я никому не нужен

Что именно Вы хотите сделать? Для того, чтобы вместо исходных внешних и прикреплённых изображений в сообщениях размещались их уменьшенные копии, в админке на странице Управление в разделе Модули необходимо включить модуль Превью-копии прикрепленных изображений

Виктория пишет:
CODE:
if (!ereg("image", $_FILES["myfile"]["type"][$i])){

Ни в коем случае не используйте в скриптах форума приведённый Вами выше код, поскольку в нём есть существенные бреши в безопасности. В частности, процитированная мною строка, в которой используется некорректная проверка типа файла (проверяется присланная браузером в заголовках строка с типом файла, которую легко подменить, и в результате закачать на Ваш сервер вредоносный скрипт - шелл, позволяющий злоумышленникам получить прямой доступ к файлам Вашего сайта и форума)
 
 
Виктория
Отправлено: 28 ноября 2009 — 16:19
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 22
Дата рег-ции: Нояб. 2009  
Откуда: Россия, Пермь
Репутация: 0




yura3d пишет:
включить модуль Превью-копии прикрепленных изображений

Про него я в курсе, но я не хотела бы его использовать, я хочу чтоб все картинки, которые люди прикрепляют становились одного размера ну например 700*500. Чтото подобное происходит с фотографиями в контакте... Я думаю вы в курсе Подмигивание
 
 
yura3d
Отправлено: 29 ноября 2009 — 18:55
Post Id


Пользователь
ExBB Team
ExBB Developer
ExBB Mods Author


Покинул форум
Сообщений всего: 3394
Дата рег-ции: Февр. 2009  
Откуда: Минск, Беларусь
Репутация: 353




Виктория пишет:
yura3d пишет:
включить модуль Превью-копии прикрепленных изображений

Про него я в курсе, но я не хотела бы его использовать, я хочу чтоб все картинки, которые люди прикрепляют становились одного размера ну например 700*500. Чтото подобное происходит с фотографиями в контакте... Я думаю вы в курсе Подмигивание

На вконтаке фотографии уменьшаются, при этом сохраняются их пропорции, поэтому одного размера фотографии никак не могут быть. В ближайшее время постараюсь выложить реализацию того, что Вы хотите
 
 
Виктория
Отправлено: 29 ноября 2009 — 21:13
Post Id



Пользователь
Newbie


Покинул форум
Сообщений всего: 22
Дата рег-ции: Нояб. 2009  
Откуда: Россия, Пермь
Репутация: 0




yura3d пишет:
В ближайшее время постараюсь выложить реализацию того, что Вы хотите

Да, конечно вы правы, именно так как в контакте я и хотела сделать.
Спасибо большое, буду ждать!

(Отредактировано автором: 29 ноября 2009 — 21:14)

 
 
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Решение проблем »

> Похожие темы: Автоизменение размеров загружаемых изображений
Темы Форум Информация о теме Обновление
Не грузится видеофайл AVI
Нужно увеличить размер загружаемых файлов.
Решение проблем Ответов: 4
Автор темы: Miette
17 марта 2012 — 13:01
Автор: Miette
Подключение Fancybox 3 (ExBB 1.1.3)
Небольшая модификация модуля для превью изображений
Модификации и дополнения Ответов: 17
Автор темы: WolfGeeN
29 апреля 2018 — 20:12
Автор: Parapsixolog
Вставка изображений с форума на других ресурсах
Обсуждаем Ответов: 7
Автор темы: Леший
2 февраля 2012 — 14:53
Автор: BON
Несколько изображений в одном сообщении
Обсуждение Ответов: 2
Автор темы: Chiv_Chelios
2 сентября 2011 — 09:42
Автор: Chiv_Chelios
Проблема с прикреплением изображений
Решение проблем Ответов: 8
Автор темы: drake78
10 июля 2009 — 14:00
Автор: yura3d
 



Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.
 




Яндекс.Метрика   

Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0899]     [ ]