далее...
Эту часть вывода комментариев...
$res1 = mysql_query("SELECT * FROM `gb_user` WHERE `ref`='" . $id . "' ORDER BY `time` DESC LIMIT " . $start . "," . $kmess);
while ($row = mysql_fetch_assoc($res1))
{
$text = $row['text'];
$text = htmlentities($text, ENT_QUOTES,'UTF-8');
//тут ниасилил
$text = str_replace("\r\n", "<br/ >", $text);
$text = tags($text);
if($set_user['smileys']) $text = smileys ($text, 1);
$vr = $row['time'] + $set_user['sdvig'] * 3600;
$vr1 = date("d.m.y / H:i", $vr);
//второй запрос зачем?
$req = mysql_fetch_assoc(mysql_query
("SELECT `id`, `name`, `sex`, `lastdate`, `datereg`, `status`, `rights` FROM `users` WHERE `id`='" . $row['uid'] . "';"));
echo ($i % 2) ? '<div class="list2">' : '<div class="list1">';вот так разве не проще?
$req = mysql_query("SELECT `gb_user`.*,
`users`.`id` as `us_id`,
`users`.`name`,
`users`.`lastdate`,
`users`.`datereg`,
`users`.`sex`,
`users`.`status`,
`users`.`rights`
FROM `users`
LEFT JOIN `gb_user`
ON `gb_user`.`uid`=`users`.`id`
WHERE `gb_user`.`ref`='".$id."'
ORDER BY `gb_user`.`time`
DESC LIMIT $start, $kmess");
while ($res = mysql_fetch_assoc($req)) {
$text = tags($res['text']);
if ($set_user['smileys']) $text = smileys ($text, 1);
$vr = $res['time'] + $set_user['sdvig'] * 3600;
$vr1 = '('.date("d.m.y / H:i", $vr).')';
echo ($i % 2) ? '<div class="list2">' : '<div class="list1">'; если в чем то ошибаюсь скажи...