application/octet-stream & thumbinail images

[slon]

Guest
application/octet-stream & thumbinail images

Есть некая фотогалерея. Все фото храняться в максимальном разрешении в еденичном экземпляре. Preview генериться на лету из большой фотки.
Задача: дать пользователю возможность скачать фотку в любом размере. Фотки выводяться в виде <img src="thumbinail.php?id=123&width=640&height=480">.
Есть скрипт для скачивания:
PHP:
<?
header("Content-type: application/octet-stream") ;
header("Content-Disposition: attachment; filename=$title") ;

$fp = fopen($file, "rb") ;
while($str = fread($fp, 1024)) {
	print($str) ;
}
fclose($fp) ;
?>
Всё прекрасно работает если $file = "full_path_to_dir/filename.jpg";
А вот если $filr = "thumbinail.php?id=123&width=640&height=480"; то всё плохо :(
Он также предлагает скачать файл, но это явно не картинка, а "нечто"...

Будут предложения?
 

Лурк

Guest
Э-э-э... Как бы, сколько пользователей у тебя будет на сайте одновременно? Ты сначала подумай какие нагрузки у тебя будут на проц сервера... Логичней было бы при загрузке изображения на сервер сразу же делать thumb'ы... Кстати, на этом форуме уже поднимался подобный вопрос... Так, что ты поищи:)
 

[slon]

Guest
Автор оригинала: Лурк
Э-э-э... Как бы, сколько пользователей у тебя будет на сайте одновременно? Ты сначала подумай какие нагрузки у тебя будут на проц сервера... Логичней было бы при загрузке изображения на сервер сразу же делать thumb'ы... Кстати, на этом форуме уже поднимался подобный вопрос... Так, что ты поищи:)
А теперь представь: 1 фото в среднем 1MB + с каждого сделать thumb + как минимум wallpaper 3-х размеров... ну и всего галерея насчитывает в районе 1000 фоток. это же какой мне хар нужен будет? а сколько гемора чтобы все эти размеры сделать...

Хотя на самом деле вопрос спорный и очень тонкий...
 

Oleg Marchuk

Человек
А сколько разных размеров одной картинки тебе надо? Хоть бы както их кешировал.

PHP:
header("Content-type: application/octet-stream") ;
Попробуй заменить на

PHP:
header("Content-type: image/jpeg") ;
 
Сверху