Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.12.2015, 19:46
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

Проблема с ответом AJAX
В общем посылаю запрос в parser.php там начинается парсинг csv файла в базу, после этого выводит 'все попарсил' или 'ошибка на таком-то этапе работы скрипта'.
Но дело в том что если увеличить лимит парсера то соответственно echo 'все попарсил'; выводится позже и в .responseText это не попадает.
Вопрос: Подскажите пожалуйста как сделать так чтобы через AJAX можно было узнать когда закончилась работа парсера(время парсинга вне тестов около 5 минут)?
Ответить с цитированием
  #2 (permalink)  
Старый 06.12.2015, 05:28
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от AntonMs
время парсинга вне тестов около 5 минут
И каких размеров CSV? И что значит "парсинг csv файла в базу"?
Ответить с цитированием
  #3 (permalink)  
Старый 07.12.2015, 00:51
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

laimas,
csv - 3Гб.
Из csv берется информация и в базу данных записывается.
Ответить с цитированием
  #4 (permalink)  
Старый 07.12.2015, 01:16
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Сообщение от AntonMs
Подскажите пожалуйста как сделать так чтобы через AJAX можно было узнать когда закончилась работа парсера(время парсинга вне тестов около 5 минут
1 раз (запрос) посылаем команду на парсинг файла. Когда файл распарсится пишем флаг в таблице.
Остальные запросы запрашиваем содержимое флага
Ответить с цитированием
  #5 (permalink)  
Старый 07.12.2015, 01:22
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

CSV парсить не нужно, для него есть готовая функция, собственно нужно только разбивать строки, подготавливая строку запроса для многострочной вставки. Да и лучше сразу в SQL загружать файл, но 3 гига не потянет.
Ответить с цитированием
  #6 (permalink)  
Старый 07.12.2015, 02:43
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

Кстати, почему во время записи в базу нельзя зайти на страницу где используется session_start() или подсчет записей в таблице?
Ответить с цитированием
  #7 (permalink)  
Старый 07.12.2015, 02:47
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

laimas, Я его парсю)) потому-что не все данные нужны, еще перевод на русский на лету происходит перед записью в базу.
Ответить с цитированием
  #8 (permalink)  
Старый 07.12.2015, 13:32
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от AntonMs
почему во время записи в базу нельзя зайти на страницу где используется session_start()
В каком смысле? Сессия не работает на странице, где сценарий записи в базу? Такого быть не может.

Сообщение от AntonMs
или подсчет записей в таблице?
После окончания запроса можно узнать эту информацию, не запрещено. Но страшно подумать, если вы не знаете количество вставляемых строк, значит вы записываете каждую строку CSV отдельным запросом в цикле?

Сообщение от AntonMs
Я его парсю)) потому-что не все данные нужны
CSV ведь строки и столбцы, если нужно только часть из столбцов, то зачем же парсить, это ведь массив, проще взять только необходимые элементы. Если же парсить, это искать нужный текст в каждой ячейке, то может проще "заготовку исходника" делать нужную, а не скармливать серверу лишние гигабайты?
Ответить с цитированием
  #9 (permalink)  
Старый 07.12.2015, 15:29
Аватар для AntonMs
Профессор
Отправить личное сообщение для AntonMs Посмотреть профиль Найти все сообщения от AntonMs
 
Регистрация: 25.01.2015
Сообщений: 163

Цитата:
Такого быть не может
laimas, На страница1.php запускаю post запрос на страница2.php где производится парсинг, потом обновляю страница1.php и она грузит пока не закончится парсинг на страница2.php.
Ответить с цитированием
  #10 (permalink)  
Старый 07.12.2015, 15:51
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

И что, это разве причина чтобы не работала сессия?
Да и собственно одной бы страницы хватило для данной задачи, главное как сама задача выполняется, а не количество страниц.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax чат - проблема useruser AJAX и COMET 15 24.05.2014 21:58
проблема в json & ajax okapo Работа 4 02.05.2013 20:56
Проблема с AJAX Dim@ AJAX и COMET 4 16.09.2012 22:52
ajax чат проблема с записью сообщения в базу данных mysql. Niksik AJAX и COMET 4 15.01.2012 14:04
Проблема с событиями после ajax запроса Mirgorod AJAX и COMET 5 12.06.2010 18:24