VoiD пишет:Используй mysql_free_result.
Я не рhp-программист и не знаю sql, мне посоветовали поставить punBB как качественное готовое решение. Поэтому еще вопросы:
Где использовать?
Единственное место, где я смог найти вызов mysql_query:
function query($sql, $unbuffered = false)
{
if (strlen($sql) > 140000)
exit('Insane query. Aborting.');
if (defined('FORUM_SHOW_QUERIES'))
$q_start = get_microtime();
if ($unbuffered)
$this->query_result = @mysql_unbuffered_query($sql, $this->link_id);
else
$this->query_result = @mysql_query($sql, $this->link_id);
if ($this->query_result)
{
if (defined('FORUM_SHOW_QUERIES'))
$this->saved_queries[] = array($sql, sprintf('%.5f', get_microtime() - $q_start));
++$this->num_queries;
return $this->query_result;
}
else
{
if (defined('FORUM_SHOW_QUERIES'))
$this->saved_queries[] = array($sql, 0);
return false;
}
}
А вот другая ф-ия, которая как раз использует mysql_free_result, и, как я полагаю, вызывается, когда результат запроса более не нужен:
function close()
{
if ($this->link_id)
{
if ($this->query_result)
@mysql_free_result($this->query_result);
return @mysql_close($this->link_id);
}
else
return false;
}
Единственное, что приходит на ум, что close() вызвается не везде, где это необходимо, или условие if не срабатывает.
Лезть в код и править то, чего не понимаю, не хочу. Если кто-то знает как грамотно поправить, будьте добры - подскажите.