|
|
|
| Подскажите новичку, как решается такая проблема: Нужно загружать Х картинок из файлов, редактировать их (через ф-ции GD) и выводить в таблице по одной картинке в ячейке. Я написал класс, который загружает нужное кол-во картинок, обрабатывает их и хранит в массиве. А вот когда пытаюсь их выводить,что-то вроде
function Browse($num){
header("content-type:image/gif");
imagejpeg(..);
}
function BrowseInTable(){
while(foreach($arr_img)){
echo"<table><tr><td><img src=".$this->Browse($n)."</td></tr></table>";
}
}
|
в ф-ции BowseInTable происходит облом т.к., как я понимаю, как только в браузер поступает echo"<table>" заголовки content-type уходят и новые заголовки из ф-ции Browse не воспринимаются.
Подскажите, как можно решить эту проблему? | |
|
|
|
|
|
|
|
для: Force_Majeure
(27.01.2006 в 10:16)
| | Можно например так.
Пишите скрипт, где будет происходить обработка картинки, скрипт помещаете в отдельный файл, например image.php, все параметры, которые необходимо передать, передаете через GET
Далее включаете этот файл в вывод картинки, т.е.
<img src="image.php?filename=img.gif&width=100&height=100">
|
Таким образом параметры можно передавать "на лету"
Второй способ - использовать буферизацию. Т.е. включаете буферизацию вывода функцией ob_start(), затем выводите все что необходимо в буфер. Потом отправляете заголовок
header("content-type:image/gif");
|
затем содержимое буфера выводите в браузер
Но мне первый вариант нравится больше. | |
|
|
|
|
|
|
|
для: Force_Majeure
(27.01.2006 в 10:16)
| | Ты должен вынести функцию вывода в отдельный файл, где будут только заголовки первыми идти, а картинки ывзывать как ссылка на этот файл, в котором функция.
<img src=файл который выдает картинки.php?id=ну и ид какую картинку выдать> | |
|
|
|
|
|
|
|
для: XPraptor
(27.01.2006 в 11:39)
| | Спасибо, так получилось. | |
|
|
|