Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вывод какой-то информации, На этапах выполнения определенных команд 
:(
    Опции темы
NetFlame
  Дата 12.9.2007, 17:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



Есть скрипт. В нем порядка 10 разных команд. Каждая команда выполняется около 10 секунд.
Когда они выполняютя, как правило, у пользователя нехватает терпения дождаться...
Так вот.
После того, как пользователь нажмёт на кнопку, оин начинают выполняться.
Как сделать поочередный вывод статус-информации после нажатия этой кнопки, когда завершена какая-то команда?

К примеру:

Создаем пользователя.... (через 10 сек. ) OK
Вписываем права доступа ....  (через 10 сек. ) OK

И т.д.

Это сообщение отредактировал(а) NetFlame - 12.9.2007, 17:02
PM MAIL WWW ICQ   Вверх
Acer
Дата 12.9.2007, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 5.9.2007
Где: UA::DN

Репутация: нет
Всего: 8



Наверно никак... Я не знаю такого способа
Разве что, Ajax попробуй... Я в нем не шарю

Это сообщение отредактировал(а) Acer - 12.9.2007, 17:20
PM MAIL   Вверх
theworldcreator
Дата 12.9.2007, 17:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 362
Регистрация: 25.8.2007
Где: Москва

Репутация: 10
Всего: 13



Цитата
function1();
echo('OK');
function2();
echo('OK');
function3();
echo('OK');
Не, это не вариант. Насколько я понял, надо выводить ОК после выполнения одной команды, а php так построен, что вначале выполнит ВЕСЬ код, а потом уже отошлет ответ пользователю в виде html кода со множеством слов ОК.
Я думаю единственный вариант использовать невидимые фреймы. В них будет открываться страница выполняющая ОДНУ команду а потом JavaScript будет изменять основную, добавляя ОК. Фреймы нужны чтоб перегружалась не вся страница, а только невидимый фрейм

Это сообщение отредактировал(а) theworldcreator - 12.9.2007, 17:58
PM MAIL WWW ICQ   Вверх
WolfON
Дата 12.9.2007, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 604
Регистрация: 19.7.2004

Репутация: 6
Всего: 8



Да вы, дорогой мой, извращенетс %)

Может все-таки по хорошему 
Код

flush();
?
PM MAIL ICQ   Вверх
NetFlame
Дата 12.9.2007, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



Цитата

Может все-таки по хорошему 


А по-подробнее можно?
PM MAIL WWW ICQ   Вверх
ewolf
Дата 12.9.2007, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 389
Регистрация: 15.8.2006
Где: г. Москва

Репутация: 8
Всего: 18



flush - "выталкивает" данные из выходного буфера и отправляет их клиенту
http://www.php.net/manual/en/function.flush.php
PM MAIL ICQ   Вверх
theworldcreator
Дата 12.9.2007, 18:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 362
Регистрация: 25.8.2007
Где: Москва

Репутация: 10
Всего: 13



Для тех у кого такой же напряг с английским как и меня вот русское(короткое довольно) описание линк
PM MAIL WWW ICQ   Вверх
mishaSL
Дата 12.9.2007, 19:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1046
Регистрация: 10.1.2007
Где: Санкт-Петербург

Репутация: 19
Всего: 54



NetFlame, считаю что оптимальным вариантом будет использование AJAX. Если использовать flush(), то вряд ли получится так, как вы хотите, т.к. после вывода этих строк скорее всего еще идет вывод оставшегося html-кода.


--------------------
Лучший способ научиться программированию - это посмотреть как это делают другие...
PM MAIL   Вверх
WolfON
Дата 12.9.2007, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 604
Регистрация: 19.7.2004

Репутация: 6
Всего: 8



Только если этот html в буфер будет записан smile

Можно, конечно, еще делать автообновление через 5сек и генерировать страницу в зависимости от статуса работы, хотя это и не красиво, но тоже альтернатива
PM MAIL ICQ   Вверх
CyClon
Дата 12.9.2007, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 3.12.2005

Репутация: 3
Всего: 4



AJAX будет идеальным вариантом. Хотя, наверно зря так говорю, ибо не знаю что за скрипт там smile


--------------------
user posted image
PM   Вверх
ewolf
Дата 13.9.2007, 01:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 389
Регистрация: 15.8.2006
Где: г. Москва

Репутация: 8
Всего: 18



Данная функция делается просто для того, чтобы пользователь не "скучал" во время работы скрипта. Так нужно ли на самом деле выдавать ему информацию из самого скрипта? 

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

При этом подгрузить во фрейм страницу, которая на самом деле будет выполнять операции, а по их окончании выдаст в браузер код, который уведомит пользователя о завершении операций.
PM MAIL ICQ   Вверх
NetFlame
Дата 13.9.2007, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



ewolf, слишком трудный вариант с java-script. Попробую с flush
PM MAIL WWW ICQ   Вверх
ewolf
Дата 13.9.2007, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 389
Регистрация: 15.8.2006
Где: г. Москва

Репутация: 8
Всего: 18



Ну пожалуй да, сложноват, хотя вчера ночью казался мне весьма хорошим  smile 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1127 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.