2013-05-31 2 views
0

Я использую PHP + MySQL. Я вставляю 20 мегабайт из 40000 элементов через задачу «Вставить» каждый день в одну таблицу хранилища данных. Мне нужно увидеть непосредственную задачу sql в моем PHP-скрипте (что-то вроде тикера задачи), но все «эхо» написаны только после завершения PHP-скрипта.Немедленная визуализация задач MySQL

Возможно ли использование AJAX?

Или вы можете порекомендовать мне какое-либо решение?

Мне нужно показать что-то подобное: INSERT INTO table VALUES (1,2,3);

+1

Доля кода. Вам нужен более быстрый запрос для вставки? – Ahmed

+0

Без JS/Ajax? № –

+0

Вам нужно что-то вроде: http://dev.mysql.com/doc/refman/5.1/en/show-processlist.html, чтобы показать весь активный запрос tastk – lexmihaylov

ответ

0

Что вам нужно сделать, так это эхо ваш запрос $ каждый раз перед запуском.

Но, я думаю, вы уже пробовали и не видели, чтобы он работал напрямую.

Это может быть связано с тем, что php или ваш веб-сервер буферизуют вывод до тех пор, пока весь запрос не будет завершен.

Вы можете сделать следующее, чтобы предотвратить буферизацию:

  • использования flush() после эха, которое должно быть вторят непосредственно
  • не используют ob_start() и включите неявный смыв, потому что даже без ob_start PHP может зависеть от буферизации
  • не использовать сжатие.

вы можете попробовать поиграться с этими командами:

apache_setenv('no-gzip', 1); 
ini_set('output_buffering', 0); 
ini_set('zlib.output_compression', 0); 
ini_set('implicit_flush', 1); 
+0

Интересное возможное решение, я собираюсь попробовать. Спасибо. – Gabriel

+0

Кстати, какой веб-сервер вы используете? Apache? Если IIS, вам также нужны некоторые настройки IIS. –

+0

Я использую Apache. – Gabriel

Смежные вопросы