PDA

View Full Version : блок выводу последних сообщений


shebeko
17.04.2006, 03:30
Проблема, у меня отображается тока самая первая мною созданая тема а не последнии и она одна а не все 5 как указано в функциях блока, вот код
<?php

if (eregi("block-vB_Last_Post", $_SERVER['PHP_SELF'])) {
Header("Location: index.php");
die();
}
global $prefix, $db;
## CUSTOMIZE SETTINGS FOR YOUR SITE ##
$forum_url = "vb"; // директорию в которой находится форум.
$forum_id = ""; // здесь вы можите указать id форума которого вы не хотите показывать в этом блоке.
$limit = "5"; // Количество сообщений.
$txtlimit = "100"; // Количество слов в названии темы.
$titlecolor="#000000"; //Цвет темы
$postedcolor="#CCCCCC"; //Цвет подписи
#######################################
if ($forum_id) {
$forumid = "AND forumid=$forum_id";
}

if ($limit) {
$limited = "LIMIT $limit";
}

$thread_sql = mysql_query("SELECT threadid,title,lastpost,lastposter,forumid,replycount,views FROM ".FORUM_VB_PREFIX."thread

WHERE visible=1 AND open=1 $forumid ORDER BY lastpost DESC $limited") or mysql_error();

while($thread_get=$db->sql_fetchrow($thread_sql))
{
$lastpost = $thread_get['lastpost'];
$poster = $thread_get['lastposter'];
$tid = $thread_get['threadid'];
$for = $thread_get['forumid'];
$replycount = $thread_get['replycount'];
$views = $thread_get['views'];
$psql = $db->sql_query("SELECT postid FROM ".FORUM_VB_PREFIX."post WHERE threadid=$tid ORDER BY postid DESC");
$getp=$db->sql_fetchrow($psql);
$pid = $getp['postid'];
$date2 = date ("d.m/G:i" ,$lastpost);
$title = $thread_get['title'];
$title = substr($title,0,$txtlimit);

$content = " <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\"><tr>
<td height=\"32\" valign=\"top\"><img src=\"images/gbs_14.gif\" width=\"502\" height=\"32\"></td>
</tr>
</table>
<table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\"><tr>
<td valign=\"top\" width=\"1\" background=\"images/gbs_08.gif\"><img border=\"0\" src=\"images/gbs_08.gif\" hspace=\"0\"

vspace=\"0\"></td>
<td width=\"100%\" valign=\"top\" background=\"images/gbs_cb.gif\" bgcolor=\"3C3C3C\">

<center>
<table bgcolor=\"#3C3C3C\" width=\"99%\" border=\"0\" bordercolor=\"$color2\" cellspacing=\"0\" cellpadding=\"1\"><tr

bgcolor=\"#3C3C3C\"><td align=\"left\" width=\"100%\" height=\"1\"><font class=A_white color=\"#ffffff\"><b>Новое на

форуме</b></font></td></tr>
</table><table bgcolor=\"#C6D3D9\" width=\"99%\" border=\"0\" bordercolor=\"$color2\" cellspacing=\"0\" cellpadding=\"0\">";
$content .= "<tr bgcolor=\"#DADADA\"><td align=\"left\" width=\"60%\" height=\"18\"><font

class=A_white><b>"._BBFORUM_NEWTOPICS."</b></font></td><td width=\"15%\" align=\"left\" ><font

class=A_white><b>"._BBFORUM_POSTER."</b></font></td><td width=\"5%\" align=\"center\" ><font

class=A_white><b>"._BBFORUM_VIEWS."</b></font></td><td width=\"5%\" align=\"center\" ><font

class=A_white><b>"._BBFORUM_REPLIES."</b></font></td><td width=\"15%\" align=\"right\" ><font

class=A_white><b>"._BBFORUM_LASTPOSTER."</b></font></td></tr>
</table><table bgcolor=\"#C6D3D9\" width=\"99%\" border=\"0\" bordercolor=\"$color2\" cellspacing=\"0\"

cellpadding=\"0\"><tr bgcolor=\"#3C3C3C\"><td align=\"left\" width=\"100%\" height=\"1\"></td></tr>
</table>

<table bgcolor=\"#EDEDED\" width=\"99%\" border=\"0\" bordercolor=\"$color2\" cellspacing=\"0\" cellpadding=\"0\"><tr

bgcolor=\"$color3\"><td width=\"60%\" align=\"left\"><img border=\"0\" src=\"images/kvadrat.gif\"><a

href=\"".FORUM_VB_DIR."/showthread.php?p=$pid#post$pid\">$title</a></td><td width=\"15%\" align=\"left\"><font

class=block>$poster</font></td><td width=\"5%\" align=\"center\"><font class=\"block\">$views</font></td><td width=\"5%\"

align=\"center\"><font class=\"block\">$replycount</font></td><td align=\"right\" width=\"15%\" align=\"center\"><font

class=\"block\">$date2</font></td></tr></table>

";
}
?>

Soniks
17.04.2006, 03:51
у вас не правильно сформуллирован вывод в цикле определение переменной $content, должно идти с точкой $content .=
и тем более для каждого сообщения будет создана таблица, получиться не красиво, нужно вывести открытие и закрытие таблицы за приделы цыкла while а в цикле добавлять строки, соответственно, смотрите на оригинал блока (или блоки для bbtonuke), как выполнено там.

shebeko
17.04.2006, 04:05
хмммм...я бы не додумался... а почему с точкой можно узнать?,... насчот таблиц я понял что из цикла их надо высонуть... просто пока скопировал с прежнего блока.
спасибо за ответ 8)

ссылка на тему есть... а как оформить ссылку на юзера создавшего эту тему?

Soniks
19.04.2006, 05:15
shebeko member.php?find=lastposter&f= и id пользователя