Непрерывный коннект

anpv

Guest
Непрерывный коннект

Привет!
Есть следующий код:
PHP:
<?php
  ini_set(max_execution_time,0);
  set_time_limit(0);
  header("Cache-Control: no-cache, must-revalidate");
  header("Pragma: no-cache");
  header("Content-type: image/gif");
  header("Connection: Keep-Alive");
  dl("mysql.so");
  define("DBName","database");
  define("HostName","localhost");
  define("UserName","user");
  define("Password","");
  if(!mysql_connect(HostName,UserName,Password))
  {
    echo "Can not connect to MySQL database ".DBName."!<br>";
    echo mysql_error();
    exit;
  }
  mysql_select_db(DBName);
  while (true)
  {
    $query="SELECT field_BLOB FROM table";
    $result=mysql_query($query);
    $image=mysql_result($result,0);
    echo $image;
    flush();
    sleep(1);
  }
?>
Этот скрипт у меня выполняется (вроде нормально) только один раз, хотя должен зацикливаться в бесконечном цикле!
Подскажите пожалуйста в чем дело???
 

Demiurg

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

anpv

Guest
Нет, разные картинки постоянно кидаются в БД.
 

anpv

Guest
Я хочу сделать чтото типа видео у клиента, т.е. непрерывно сменяющиеся картинки с частотой 1 Гц.
 

Demiurg

Guest
Либо яваскриптом подменято картинку раз в секнду и при этом держать одну в фоне, либо потоковое видео. посмотри как сделаны веб-камеры
 

anpv

Guest
Я пробовал яваскриптом, но это работает медленно не на выделенных линиях.
Т.е. на яваскрипт запускается рекурсивная функция с интервалом 1 сек, которая обращается к скрипту РНР, который в свою очередь выдает картинку. Это затратно по времени и нагрузка на линию.
IMHO если сделать бесконечный цикл то ответ будет поступать клиенту с РНР скрипта. Это должно быть быстрее.
 

Demiurg

Guest
ничего быстрее работать не будет. Ты показываешь картинку A тем временем внизу размером 0 на 0 лежит следующая картинка. Потом через секунду картинка A заменяется картинкой B, и так далее.
 

anpv

Guest
А всетаки по поводу вышеописанного скрипта, в чем проблема?
 

Demiurg

Guest
>А всетаки по поводу вышеописанного скрипта, в чем проблема?
Я наливаю в поллитровую кружку поллитровую бутылку пива, потом еще одну, потом одну. почему у меня в кружке только пол литра ?
 

anpv

Guest
Потому что старое пиво в кружке вытесняется новым :)
 

Demiurg

Guest
нет, новое пиво даже не попадает в кружку, оно сразу выливается.
 

anpv

Guest
>нет, новое пиво даже не попадает в кружку, оно сразу выливается
что то не могу понять, можно подсказку?
 

anpv

Guest
Т.е., если я правильно понял:
пиво - картинка,
кружка - буфер вывода,
выливается - flush()?
 

Demiurg

Guest
картинка - она на то и картинка, что она не видео. Это понятно ? Она одна, она не движется (если это не анемированый гиф) она не меняется она как в картинной галерее весит несколько лет и весит на одном месте с одними и теме же цветами и что там было нарисовано год назад, то и сейчас. Для того, что бы картинка изменилась надо её снять и повесить новую. Либо купить телевизор на котором картинка меняется.
 

Кром

Новичок
>что то не могу понять, можно подсказку?

Это не подсказка, это притча. Сейчас в клубе стало очень модно говорить притчами. :)
 

Demiurg

Guest
> Сейчас в клубе стало очень модно говорить притчами.
мода тут непричем, просто на примере телевизора и пива люди понимают лучше, чем на примере http-запросов и форматов данных. Жаль только, что не все.
 
Сверху