Нашел ужасный код в двиге JohnCMS5

1.28K
.
# seg0ro (02.10.2013 / 07:11)
Простых вещей не знаем.
У меня одноклассник не знает что такое cms / сук, а выпендривается, будто всезнающий в этом деле
.
Koenig
(\/)____o_O____(\/)
разделив таблицы постов от структуры многое проще сделать будет, изначально я даже создал 5 таблиц, но минус в том что вложенность ограничена, но плюсов тоже хватает
по поводу не прочитанного, имхо просто по времени последнего входа проверять темы, пусть не скинет при прочтении, но и таблицу иметь отдельную не нужно
.
Krite
# web_demon (01.10.2013 / 21:47)
$req = mysql_query("SELECT * FROM `forum` WHERE `type` = 't' AND `close`!='1' ORDER BY `time` DESC LIMIT 10");
while ($arr = mysql_fetch_array($req))
{
$q3 = mysql_query("sel
Вполне можно "сджойнить"
$req = mysql_query("SELECT `forum`.`text`, `newforum`.`text` as `razdel`, `rforum`.`text` as `rname`, COUNT(`messages`.`refid`) as `count` FROM `forum` LEFT JOIN `forum` as `newforum` ON `forum`.`refid`=`newforum`.`id` LEFT JOIN `forum` as `rforum` ON `newforum`.`refid`=`rforum`.`id` LEFT JOIN `forum` as `messages` ON `forum`.`id`=`messages`.`refid` WHERE `forum`.`type` = 't' AND `forum`.`close` != '1' GROUP BY `messages`.`refid` ORDER BY `forum`.`time` DESC LIMIT 10") or die(mysql_error());
while ($arr = mysql_fetch_array($req))
    {
echo 'Название темы: '.$arr['text'] . '<br />';
echo 'Название раздела: '.$arr['razdel'] . '<br />';
echo 'Название основного раздела: '.$arr['rname'] . '<br />';
echo 'Количество сообщений: '.$arr['count'] . '<br />';
}
.
А нельзя сделать непрочитанным только те темы в которые ты писал и отвечал? Зачем мне например читать то что мне вообще не надо...
.
(\/)____o_O____(\/)
Nurbekov, сделать можно, надо вообще данную систему как и структуру переделывать
.
# Nurbekov (21.10.2013 / 09:47)
А нельзя сделать непрочитанным только те темы в которые ты писал и отвечал? Зачем мне например читать то что мне вообще не надо...
тогда коже по разделу отрубать.
.
-=ВДРЕБЕЗГИ=-
надеюсь это исправили?
.
# -=ВДРЕБЕЗГИ=- (21.03.2014 / 00:36)
надеюсь это исправили?
нет
.
MoD
Light in Night
Почитал, подумал... Обсуждать, конечно, это вопрос можно долго и упорно. Можно предлагать кучу решений/костылей. Но не кажется ли Вам, уважаемые, что проще сделать как-то примерно так

Избавиться вообще от такого пережитка, как непрочитанное
Вместо непрочитанного - выводить юзеру ссылку на последние ответы в топиках и линк на ответы со времени его последнего прочтения (где-то тут уже подобное было упомянуто)
Добавить в табличку users поле с последним прочтением топиков юзером и от него потом плясать.
И не надо думать, как выводить непрочитанное.
Если пользователь хочет посмотреть активные темы - то ему в последние обновленные (вообще все, за определенный период, например, с возможностью выбора периода).
Если то, что он еще не видел - выводим те топики, которые обновлялись после "отметки о прочтении".
Сбросить непрочитанное таким образом можно элементарно - просто обновить юзеру поле "last read" - по ссылке.


Может написано не совсем грамотно, может немного сумбурно, но смысл, я думаю, понятен.
.
(\/)____o_O____(\/)
я об этом давно еще писал
Всего: 105