Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Вопрос по счётчику PowerCounter 2.9.0 - не хватает памяти для массива

Сообщения:  [1-3] 

 
 автор: cheops   (09.02.2008 в 01:49)   письмо автору
 
   для: Rprint-max   (08.02.2008 в 16:53)
 

Объём таблиц большой?
1) Возможно вам имеет смысл уменьшить срок хранения актуальных данных.
2) А также повесить процесс архивации данных на cron, если в систему администрирования заглядываете не регулярно.

   
 
 автор: mechanic   (08.02.2008 в 17:51)   письмо автору
 
   для: Rprint-max   (08.02.2008 в 16:53)
 

нууу.. если в таблице более 3 столбцов (id_page, name и title), то зачем выбирать их все ("*")? имеет смысл оставить только те три, ибо я вижу, что только они используются в коде.. соотв-но освободится немного памяти
получим запрос "SELECT id_page, name, title FROM pages"
да и код в цикле while можно привести к виду
$names[$p_names['id_page']] = $p_names;

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

   
 
 автор: Rprint-max   (08.02.2008 в 16:53)   письмо автору
 
 

У меня установлен счётчик PowerCounter 2.9.0 в режиме, который считает страницы index.php и index.php?x=2 разными страницами.

И теперь, видимо, из за большого количества страниц он мне выдаёт ошибку в файле /counter/admin/enterpoint.php?id_page= (Точки входа и выхода):

Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 35 bytes) in /usr/home/academp/site/www.rprint.ru/counter/admin/enterpoint.php on line 121

ругается вот на этот цикл:

  //Получаем массив с названиями, id и адресами страниц      
  $p_n=mysql_query("SELECT * FROM pages");
  while ($p_names=mysql_fetch_array($p_n))
  {
    $names[($p_names['id_page'])]['name']=$p_names['name'];
    $names[($p_names['id_page'])]['title']=$p_names['title'];
  }


можно как-нибудь решить этот вопрос, кроме как чисткой базы?

   

Сообщения:  [1-3] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования