Просмотр поста

.
Fikus79

Jane, я совсем снес данный модуль. Слишком многое надо дорабатывать. Я только сейчас заметил, как выясняются лидеры вопросов, ответов, пользователей...
Это происходит быстро, пока вопросов и ответов мало. А когда их число перевалит за тысячи?
Вот твой код:

case "bestqperson":
	echo '<div>';
	$count = mysql_result(mysql_query("SELECT count(*) FROM `question_q`"),0);
	$q1 = mysql_query("select * FROM `question_q`");
	while($qq1 = mysql_fetch_array($q1)) 
	{
		$count_q = mysql_result(mysql_query("select count(*) FROM `question_q` WHERE `id_user` = '" . $qq1['id_user'] . "'"),0);
		$qa [$qq1['id_user']] = $count_q;
	}
	arsort ($qa);
	$count_arr = count($qa);

При 1000 вопросах этот код обратится к базе 1002 раза.
Совет: добавь в таблицы вопросов, ответов, юзеров по одному полю, и сортируй по нему.
При добавлении плюса ответу, увеличивай значение поля voters(например) на единицу, и потом сортируй по этому полю. Таблицу голосов оставь, чтобы проверять кто голосовал.
Извини, что только критикую.