Robin_Bad: Gaaarfild, руками (fgets()) парсите файл, т.е. построчно его разбираете и при необходимости преобразовываете кодировку. затем либо группируете запросы к БД, чтобы сократить их количество, либо разносите их во времени, чтобы сервер не ложился.
P.S. Сервер обычно ложится не от количества обращений, а от их "качества".
А разносить по времени с помощью sleep()?
Просто я на каждую строчку делал INSERT. Ибо данные помещаются не только в одну таблицу, а еще и с FK в другие таблицы.
Потому что если делаю fgetcsv() - коряво работают некоторые кодировки. Хотя я локаль указал правильно.
Потом делаю fgets();
Разбиваю каждую строку с помощью explode() и загоняю в базу.
Когда текстовый файл размером в 1-2 мегабайта, от количества обращений в бд сервер вешается.
Точнее Выдает Bad Gateway.
В общем, можно не обсуждая просто сказать, возможно сделать с теми условиями, которые есть? И если можно то как? Вот такой ответ будет максимально ценен.
Так php не имеет доступ к строкам. Если я сделаю считывание файла, сервер будет падать при каждой загрузке файла. Так как в файле очень сильно много записей.
Gaaarfild, ну значит не делай ничего. капусту лучше выращивай.
Спасибо, очень полезный пост.
Зачем тут твой сарказм? На форум не пишут люди, которые знают вообще все. Ну кроме тебя конечно.
но в почтовом ящике он абсолютно нормален.
Ну а каким образом их можно привести в читаемый вид, а тот, который неправильный, сделать правильным?
Очень прошу помощи.
Спасибо.
Действительно ошибка в этом. Решил тем, что выставил в скобках вместо AND - OR.
И все заработало абсолютно правильно.
Спасибо за помощь.
1=1 - это заглушка. Когда генерируешь запрос через цикл, как-то необходимо завершить его корректно. Он же не может закончится на AND,
Почему
Это ведь не переменная.
Мы вытаскиваем значения равные 57, а так же 58.
Разве не так?
Единственная проблема с DELAYED только в том, что если комп выключится до загрузки в Бдб то данным капец.
Gaaarfild, руками (fgets()) парсите файл, т.е. построчно его разбираете и при необходимости преобразовываете кодировку. затем либо группируете запросы к БД, чтобы сократить их количество, либо разносите их во времени, чтобы сервер не ложился.
P.S. Сервер обычно ложится не от количества обращений, а от их "качества".
А разносить по времени с помощью sleep()?
Просто я на каждую строчку делал INSERT. Ибо данные помещаются не только в одну таблицу, а еще и с FK в другие таблицы.
Потому что если делаю fgetcsv() - коряво работают некоторые кодировки. Хотя я локаль указал правильно.
Потом делаю fgets();
Разбиваю каждую строку с помощью explode() и загоняю в базу.
Когда текстовый файл размером в 1-2 мегабайта, от количества обращений в бд сервер вешается.
Точнее Выдает Bad Gateway.
В общем, можно не обсуждая просто сказать, возможно сделать с теми условиями, которые есть? И если можно то как? Вот такой ответ будет максимально ценен.
Так php не имеет доступ к строкам. Если я сделаю считывание файла, сервер будет падать при каждой загрузке файла. Так как в файле очень сильно много записей.