php и ajax

MA
На сайте с 16.12.2012
Offline
0
460

Всем привет!

Ребята, помогите с таким простецким вопросом)))

Вот есть , например, такой пхп-скрипт:


for($i=0; $i<1000000; $i++)
{
echo $i;
}

И есть такая хтмл-страница:


<html>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
<div id="hi">Тест</div>
<script>

$("#hi").load("test_ajax.php");

</script>
</html>

Т.е. я хочу, чтобы в див данные подгружались из скрипта. Да, они подгружаются, но только тогда, когда цикл закончится(это нужно ждать определенное время: где-то около минуты). Вот , кто знает, подскажите, пожалуйста, как сделать, чтобы данные выводились в див в ходе цикла, т.е., чтобы в див попеременно подставлялись цифры, т.е., чтобы не приходилось ждать, пока весь цикл кончится, а сразу видеть результаты в ходе работы скрипта.

Спасибо)

beginerx
На сайте с 13.07.2009
Offline
173
#1

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

но можно сделать наоборот, в ява-скрипте опрашивать ваш пхп с нужной периодичностью

(ну а состояние переменной цикла в мускуле, файле или шаредной памяти хранить)

т.н. на один вызов из ява скрипта вашего пхп делать в нем одну (или несколько) прокруток

цикла... А ежели хочется особо поизвращаться с html 5 - то там есть серевер драйвен евентс

и есть вебсокеты которые такое могут - постоянно дергать с сервера вашу страницу с ява скриптом

но и на серверной части придется поизучать немало всякой фигни, но все работает,

я осилил но потом забил ибо для простых сайтов сложновато получается....(да и на шаредном

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

еще извратиться их запустить на шареде, если без извратов то минимум VPS)

а также подумайте что будет с вашей системой при одновременном обращении к ней нескольких пользователей.

>>>Скорость и Реакция<<< (https://vk.com/app4629907 ): онлайн тренировка скорости и времени реакции.... (https://vk.com/app4612117 )... (https://vk.com/club18740762 ).
MA
На сайте с 16.12.2012
Offline
0
#2
beginerx:
на перле будет как раз все время в поток слать как вы хотите, а на пхп никак...

но можно сделать наоборот, в ява-скрипте опрашивать ваш пхп с нужной периодичностью
(ну а состояние переменной цикла в мускуле, файле или шаредной памяти хранить)
т.н. на один вызов из ява скрипта вашего пхп делать в нем одну (или несколько) прокруток
цикла... А ежели хочется особо поизвращаться с html 5 - то там есть серевер драйвен евентс
и есть вебсокеты которые такое могут - постоянно дергать с сервера вашу страницу с ява скриптом
но и на серверной части придется поизучать немало всякой фигни, но все работает,
я осилил но потом забил ибо для простых сайтов сложновато получается....(да и на шаредном
хостинге чтобы это запустить придется еще дполнительно поизвращаться, то есть кроме асинхронных пхп фреймворков
еще извратиться их запустить на шареде, если без извратов то минимум VPS)

а также подумайте что будет с вашей системой при одновременном обращении к ней нескольких пользователей.

Спасибо за ответ.

Только что пришла умна мысля, вспомнил про flush(), чуть погуглил... Сейчас попробую)

VHS-1980
На сайте с 21.05.2010
Offline
91
#3

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

H
На сайте с 09.10.2012
Offline
11
#4

Главный вопрос тут - зачем?

Подскажите более реальную задачу, где вам нужно это использовать.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий