Перейти к содержанию
СофтФорум - всё о компьютерах и не только

IPB Last Topics


Рекомендуемые сообщения

Нужна помощь! Сам себя уже конкретно запутал...

Хотел сделать блок с с самыми последними темами и сообщениями, как ЗДЕСЬ.

Кодировка форума у меня windows-1251, база само собой так же.

Написал запрос к базе, всё ОК, только русский язык в "?????????" вылетает...

Голова не шарит, да я сам уже запутался...

Помогите пожалуйста!

Спасибо!

Изменено пользователем Dare-Devil
Ссылка на комментарий
Поделиться на другие сайты

Во первих попробуйте добавить запрос

SET NAMES 'cp1251'

Перед запроса последних сообщения

Во вторих (если не сработаеть) где сделали блок - в каком скрипте (в самом ipb или внешнего), какая кодировка файла и т.д. ?

Ссылка на комментарий
Поделиться на другие сайты

Спасибо!

Добавил

SET NAMES 'cp1251'

и всё ОК!

С меня "+" :no:

Теперь вопрос такой, как добавить это в заголовке форума?

Я когдато изменял общий шаблон форума, чтоб вклеить туда объявления Гугла, но это просто ДжаваСкрипт...

Я сомневаюсь что туда PHP прописывать можно... Или можно?

Вот с этим еще помогите :)

Изменено пользователем Dare-Devil
Ссылка на комментарий
Поделиться на другие сайты

Ладно, пока сделал фрейм на статус, и всё норма.

Но всё же интересно как сделать это без фрейма...

В общем, блок закончен!

Кому полезно, ниже код!

Выдает три блока : Последние темы, последние сообщения, и интересные темы.

Настройки вписывайте свои.

Стиль тож по вашему вкусу.

Э... Как там этот копирайт?? :)

Статус скрипта FreeWare (Бесплатный)

Строго код не судите, я только учусь! :D

<?php//Главные настройки$host = localhost; //Адресс вашего сервера , обычно это localhost$login = login; //Ваш логин к MySQL серверу.$pass = pass; //Ваш пароль к MySQL серверу.$database = database; //База данных вашего форума$urlforum = "http://www.yourhost.com/forum"; //URL вашего форума, без слеша (/) в конце.$con = mysql_connect($host,$login,$pass) or die ("Couldn't Connect : " . mysql_error());$db = mysql_select_db($database,$con) or die ("Couldn't Select DB : " . mysql_error());///New Topics$car = mysql_query("SET NAMES cp1251",$con) or die("SET NAMES FAILED : " . mysql_error());$sql = "SELECT tid, title FROM ibf_topics ORDER BY tid DESC LIMIT 10";$result = mysql_query($sql,$con) or die("Query failed : " . mysql_error());while($row = mysql_fetch_array($result)){$title = $row['title'];$tid = $row['tid'];$content .= "<a href=\"$urlforum/index.php?showtopic=$tid\" target=\"_top\">$title</a><br>";}///Last posts$sql = "SELECT pid, topic_id FROM ibf_posts ORDER BY pid DESC LIMIT 10";$result = mysql_query($sql,$con) or die("Query failed : " . mysql_error());while($row = mysql_fetch_array($result)){$pid = $row['pid'];$tid = $row['topic_id'];$sqlt = "SELECT title FROM ibf_topics WHERE tid = $tid";$res = mysql_query($sqlt,$con) or die("Query failed : " . mysql_error());$ro = mysql_fetch_array($res);$title = $ro['title'];$content2 .= "<a href=\"$urlforum/index.php?showtopic=$tid&view=getnewpost\" target=\"_top\">$title</a><br>";}///Interesting topics$sql3 = "SELECT title, posts, tid FROM ibf_topics ORDER BY posts DESC LIMIT 10";$result3 = mysql_query($sql3,$con) or die("Query failed : " . mysql_error());while($row3 = mysql_fetch_array($result3)){$title3 = $row3['title'];$tid3 = $row3['tid'];//$posts3 = $row3['posts'];$content3 .= "<a href=\"$urlforum/index.php?showtopic=$tid3&view=getnewpost\" target=\"_top\">$title3</a><br>";}?><html><head><meta http-equiv=Content-Type content="text/html; charset=windows-1251"><style type="text/css"><!--BODY {font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 8px;font-weight: normal;	color: #FFFFFF}A {font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 10px;color: #FFFFFF;}A:hover {font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 10px;color: #82ad41;}--></style></head><body bgcolor="#1b1b1b"><center><table width="800" border="0" cellpadding="0" cellspacing="0" ><tr><td><table width="300" border="1" bordercolor="#82ad41"><tr><td><center><b>Last Topics:</b></td></tr><tr><td><center><?php echo $content; ?></td></tr></table></td><td><table width="300" border="1" bordercolor="#82ad41"><tr><td><center><b>Last Posts:</b></td></tr><tr><td><center><?php echo $content2; ?></td></tr></table></td><td><table width="300" border="1" bordercolor="#82ad41"><tr><td><center><b>Interesting Topics:</b></td></tr><tr><td><center><?php echo $content3; ?></td></tr></table></td></tr></table></body></html>
Изменено пользователем Dare-Devil
Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

Может кто помочь? Голова не шарит в будние дни!

В колонке последних сообщений, пишется всё подряд! Тоесть, если в одной и той же теме писали 10 сообщений подряд, то все колонка забита только той темой в которой писали. И выходит так:

Последние сообщения:

Тема

Тема

Тема

Тема

Тема

Тема

Тема

Тема

Тема

Тема

Подскажите как скрипт "подрихтовать" , чтоб не выводило одно и тоже!

Как бы обьяснить...

Если тема уже писалась, то не выбирать её еще раз, и перейти дальше!

Незнаю что чинить, SQL запрос или сам код!

Спасибо!

Ссылка на комментарий
Поделиться на другие сайты

$sql = "SELECT pid, topic_id FROM ibf_posts ORDER BY pid DESC LIMIT 10";

Замени на

$sql = "SELECT DISTINCT topic_id, pid FROM ibf_posts ORDER BY pid DESC LIMIT 10"
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...