Forum Webscript.Ru

Программирование => PHP => Тема начата: Dmitry Y от 25 Февраля 2004, 06:34:21

Название: Задержка с показом сгенерированных картинок
Отправлено: Dmitry Y от 25 Февраля 2004, 06:34:21
График, генерируемый скриптом, почему-то очень долго не виден на странице. Картинка - png. Использую GD. Пробовал посмотреть время работы скрипта - все OK. Вес картинки тоже вроде нормальный. Бывает, что Properties по правому щелчку мыши показывают нормальный вес файла (~1.5kb), бывает - Not Available. При этом, если попытаться сохранить картинку, IE предлагает сохранять как bmp.
В Headers всячески написано, что файл не должен кэшироваться. Может, проблема как-то с этим связана? Или еще что-то?
Название: Задержка с показом сгенерированных картинок
Отправлено: Макс от 25 Февраля 2004, 12:34:01
может картинка долго генерируется ?
Попробуй измерить время работы этого скрипта
Название: Задержка с показом сгенерированных картинок
Отправлено: Меняздесьдавнонет от 25 Февраля 2004, 12:45:56
Цитировать
очень долго

- это, конечно, четкое описание проблемы.
Название: Задержка с показом сгенерированных картинок
Отправлено: Dmitry Y от 25 Февраля 2004, 15:49:00
Макс, я знаю время работы скрипта. Не более 0.1 сек. Потому и написал: OK
RomikChef, если пишу "очень долго" - значит так и есть, значит время не сопоставимо со временем работы скрипта и весом получаемой картинки. Если интересны цифры - 1-2 сек.

Я видел подобную проблему на других сайтах, списывал это на какие-то задержки в сети. Но сейчас вижу это на своем компьютере (WinXP, Apache, PHP 4.3.3, IE6)
Название: Задержка с показом сгенерированных картинок
Отправлено: Меняздесьдавнонет от 25 Февраля 2004, 16:27:41
Цитировать
если пишу "очень долго" - значит так и есть

если ты пишешь для себя - то не стоит вообще утруждаться писать на форум.
Если ты пишешь для того, чтобы тебе помогли, то будь добр сообщать подробную информацию о проблеме, решение которой нужно, между прочим, тебе.

И не надо мне делать одолжение.
Ты, по-моему, все время забываешь, что это ты пришел за помощью сюда.
Если тебя о чем-то переспрашивают - это значит, что ты те очень хорошо написал свой вопрос. Надо быстро ответить, без беллетристики, рассказывающей всем, какой ты умный.

убери запрет кэширования и добавь вместо него параметр к адресу случайный.
этокак минимум даст картинке сохраняться, не как бмп.

и посмотри сниффером (лучше всего - проксомитроном), как идет обмен с сервером, в какой момент происходит задержка.
А то пальцы гнуть и всем объяснять, что они задают детские вопросы - это ты мастер.
А глазами посмотреть, отладить, разложить на кирпичики - это за тебя кто другой должен делать.
Название: Задержка с показом сгенерированных картинок
Отправлено: Dmitry Y от 25 Февраля 2004, 16:39:45
А как flush там использовать?
Код примерно такой:

//засекаем время,
//получаем переменные из GET, SESSION,
//лезем в базу, собираем array()
// из него генерируем картинку: imageFilledRectangle, imageString в циклах
//считаем прошедшее время - последняя imageString

Header("Content-type: image/png");
Header("Last-Modified: ".gmdate("D, d M Y H:i:s")."GMT");
Header("Cache-Control: no-cache, must-revalidate");
Header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
Header("Pragma: no-cache");
ImagePng($im);
imageDestroy($im);
Название: Задержка с показом сгенерированных картинок
Отправлено: Макс от 25 Февраля 2004, 16:53:38
если сессии используются, то возможно где-то не хватает [p]session_write_close[/p] (у тебя фреймы случайно на сайте не используются ?)

И посмотри страницу в других броузерах, может это проблема IE