| |
|
|
| | Приветствую!
На сайте появляется такая ошибка:
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 2621529 bytes) in Unknown on line 0
Подскажите, пожалуйста, как с этим бороться? | |
| |
|
|
| |
|
|
| |
для: Jaroslav
(05.04.2007 в 21:34)
| | | Сайт принимает бешенного размера данные методом POST? | |
| |
|
|
| |
|
|
| |
для: Trianon
(05.04.2007 в 23:33)
| | | Нет. Идет считывание рядов из базы данных (8000) и они сохраняются в сессию. Как можно этого избежать? | |
| |
|
|
| |
|
|
| |
для: Jaroslav
(06.04.2007 в 01:11)
| | | А зачем такой капитальный объём в сессию перегонять - шило на мыло меняете: из базы данных помещаете данные в текстовый файл? Пусть уж данные в таблице и остаются... А на каждой странице запрашивайте их из базы данных, причём не все 8000, а лишь часть, например, 20, всё равно посетитель больше в голове не удержит. | |
| |
|
|
| |
|
|
| |
для: cheops
(06.04.2007 в 02:08)
| | | Проблема вот в чем. В базе данных есть ~ 8000 строк с описанием работ пользователей (одна строка - одна работа). Надо вывести на каждой странице по 20 работ. Причем так, чтобы при каждом заходе пользователя они выводились в случайном порядке. Но при обновлении страницы оставались одни и теже. Вот я и считываю все строки из базы данных, загоняю их в сессию, и затем вывожу на каждой странице по 20 штук :)
Как сделать правильно? | |
| |
|
|
| |
|
|
| |
для: Jaroslav
(06.04.2007 в 02:19)
| | | Хм.... нет, лучше загонять в сессию лишь 20 выбранных, а остальные пусть в базе данных лежат. | |
| |
|
|
| |
|
|
| |
для: Jaroslav
(06.04.2007 в 02:19)
| | | можно попробовать сделать что-то вроде постранички, и установить динамичный лимит запроса к базе. будет всего по 20 строк из базы... | |
| |
|
|
| |
|
|
| |
для: black_prince
(06.04.2007 в 12:17)
| | | Ситуация осложняется тем, что требуется выводить случайные записи из таблицы, а перезагрузка страницы должна выдавать тот же самый набор. | |
| |
|
|