![]() |
Показаны 5 сообщений на этой странице |
Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- VBulletin 2.x.x (http://netadmin.ws/forum/forumdisplay.php?forumid=45)
-- Вывод последнего сообщения на home page (http://netadmin.ws/forum/showthread.php?threadid=5733)
Вывод последнего сообщения на home page
Сорри, что открываю новую тему, но видимо в старую никто не заглядывает..
>>>
Подскажите, плз, что делаю не так?
вывожу первые 100 символов последнего сообщения из заданного форума(в данном случае из номера 2) так:
<?
include("/full-path/forum/admin/config.php");
$connection = mysql_connect("$servername","$dbusername","$dbpassword") or die ("Cannot connect to server.");
$db = mysql_select_db("$dbname", $connection) or die (mysql_error());
$sql = "SELECT thread.title, thread.threadid, thread.lastposter, post.pagetext from thread, post WHERE thread.forumid = 2 ORDER by thread.lastpost desc limit 1";
$sql_result = mysql_query($sql, $connection);
echo mysql_error();
if (!$sql_result) {
echo "<p>Could not get record.";
}
while ($row = mysql_fetch_array($sql_result)) {
$threadid = $row["threadid"];
$thetitle = $row["title"];
$lastposter = $row["lastposter"];
$post = $row["pagetext"];
$mypost = substr($post, 0, 100);
$mypost .= "...";
echo "<b>$thetitle</b><br>$mypost<br>";
echo "<a href=\"http://www.my-site.ru/forum/showthread.php?s=&threadid=$threadid&goto=newpost\" title=\"$post\">Читать дальше</a><br><br>";
}
mysql_free_result($sql_result);
mysql_close($connection);
?>
..
$sql = "SELECT thread.title, thread.threadid, thread.lastposter, post.pagetext from thread, post WHERE thread.forumid = 1 OR thread.forumid = 2 ORDER by thread.lastpost desc limit 1";
..
может все-таки
- добавишь в выражение WHERE "thread.threadid=post.threadid"
или
- изменишь FROM thread LEFT JOIN post ON (post.threadid = thread.threadid)
Afina
Спасибо!
второй вариант работает.
Первый - если просто добавить - ошибки, если заменить, то работает, но тред берется из любого форума..
Когда я сказал ДОБАВИТЬ я имел ввиду
WHERE (thread.forumid = 2) AND (thread.threadid=post.threadid)
сорри, работа с MySQL пока мое слабое место...
добавила:
WHERE (thread.forumid = 1 AND thread.threadid=post.threadid) OR (thread.forumid = 2 AND thread.threadid=post.threadid)
и все заработало..
Спасибо!
еще такой вопрос, как сделать чтобы скрипт выводил не первое сообщение последнего треда, а _последнее_ сообщение последнего треда, есно с главной темой треда.
| Формат времени GMT. Текущее время 04:15. | Показаны 5 сообщений на этой странице |
Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.