Мобильная версия форумов
Открыть
 −6°C
завтра: −13°C
Погода в Перми
−6°C
утром−11°C
днем−13°C
завтра−13°C
Подробно
 66,70
+0.1615
Курс USD ЦБ РФна 16 февраля
66,7044
+0.1615
 75,25
+0.2021
Курс EUR ЦБ РФна 16 февраля
75,2492
+0.2021
  • ЙА ТИГОР

    Сообщений: 8120

    Есть, в общем, проблема... На сервере лежит файл *.csv. Надо данные из него закинуть в таблицу в MySQL. Так вот, написан скрипт, запускается из браузера, и, используя fgetcsv(), он забрасывает строки в таблицу. Если в файле строк немного, ну, положим, около 400 - все нормально добавляется... Если же строк больше, а теоретически, их может быть 8-10 тысяч, но проверялось реально на 5 тысячах, то работа скрипта прерывается по таймауту, браузер выводит пустоту вместо сообщения об окончании процесса... В таблице максимум 700 записей появляется...
    Как обойти проще всего?
    Вариант с разбивкой файла на несколько не предлагать - не устраивает...

    Кто яростно ненавидит мотоциклистов тот сам латентный мотоциклист.

  • veteran

    Сообщений: 1507

    set_time_limit() ?

    как вариант попробовать load data infile через CGI или ещё лучше с консоли. Или набодяжить phpMyAdmin.

  • Почтальон Печкин

    Анонимный пользователь

    Может и не самое простое, но как вариант:

    Запускать PHP программу, производящую конвертацию как отдельный процесс из скрипта. Программа будет сигнализировать о своем окончании например выставив флаг в базе. При желании можно вообще прогресс там выставлять, чтобы на страничке можно было писать "столько-то записей добавлено" (а скрипт будет проверять/обновлять периодически прогресс), при большом времени исполнения это может иметь смысл. С set_time_limit() простое решение, но нужно заведомо знать максимальное время исполнение скрипта.

    ЗЫ. В PHP практически не шарю:улыб:

  • ЙА ТИГОР

    Сообщений: 8120

    В общем, на локально установленном Apache+PHP+MySQL с дефолтными настройками все заработало с добавлением set_time_limit(). Как оно будет работать на чужом сервер - покажут тесты...
    PHPMyAdmin на такой большой файл с запросами реагирует скотски - обрывается в 404 Not Found

    Кто яростно ненавидит мотоциклистов тот сам латентный мотоциклист.

  • member

    Сообщений: 75

    еще наверное по умолчанию стоит максимальный размер загружаемого файла 2мб

  • ЙА ТИГОР

    Сообщений: 8120

    Стоит, но это некритично - тестовый файл в 12 килозаписей занимает 1.2 метра. Плюс планируется загрузка по FTP, ибо так проще...

    Кто яростно ненавидит мотоциклистов тот сам латентный мотоциклист.

Записей на странице:

Перейти в форум

Модератор: