Gaaarfild

Рейтинг
51
Регистрация
24.10.2009
Интересы
5bc341
netwind:
Gaaarfild, ну значит не делай ничего. капусту лучше выращивай.

Спасибо, очень полезный пост.

Зачем тут твой сарказм? На форум не пишут люди, которые знают вообще все. Ну кроме тебя конечно.

но в почтовом ящике он абсолютно нормален.

Ну а каким образом их можно привести в читаемый вид, а тот, который неправильный, сделать правильным?

Очень прошу помощи.

Спасибо.

Действительно ошибка в этом. Решил тем, что выставил в скобках вместо AND - OR.

И все заработало абсолютно правильно.

Спасибо за помощь.

1=1 - это заглушка. Когда генерируешь запрос через цикл, как-то необходимо завершить его корректно. Он же не может закончится на AND,

Почему

a.`uid`=58 AND a.`uid`=57 - одновременно
- ошибочно?

Это ведь не переменная.

Мы вытаскиваем значения равные 57, а так же 58.

Разве не так?

Единственная проблема с DELAYED только в том, что если комп выключится до загрузки в Бдб то данным капец.

Robin_Bad:
Gaaarfild, руками (fgets()) парсите файл, т.е. построчно его разбираете и при необходимости преобразовываете кодировку. затем либо группируете запросы к БД, чтобы сократить их количество, либо разносите их во времени, чтобы сервер не ложился.

P.S. Сервер обычно ложится не от количества обращений, а от их "качества".

А разносить по времени с помощью sleep()?

Просто я на каждую строчку делал INSERT. Ибо данные помещаются не только в одну таблицу, а еще и с FK в другие таблицы.

Потому что если делаю fgetcsv() - коряво работают некоторые кодировки. Хотя я локаль указал правильно.

Потом делаю fgets();

Разбиваю каждую строку с помощью explode() и загоняю в базу.

Когда текстовый файл размером в 1-2 мегабайта, от количества обращений в бд сервер вешается.

Точнее Выдает Bad Gateway.

В общем, можно не обсуждая просто сказать, возможно сделать с теми условиями, которые есть? И если можно то как? Вот такой ответ будет максимально ценен.

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

Всего: 61