Как узнать количество топиков пользователя в определенной секции?
Roffun |
|
---|---|
Здравствуйте, подскажите пожалуйста , каким образом можно получить количество тем пользователя ? Есть секция форума, в ней 8 форумов, нужно узнать количество топиков пользователя. Это нужно для того, чтобы потом сравнить условием, если >= 1 , проще говоря именно в этих 8 форумах , находящихся в одной секции, нужно знать что пользователь создал 1 топик, после чего будет через условие скрываться кнопка создания нового топика в этих форумах, и форма добавления(чтобы через браузер не перешли без кнопки). Я специализируюсь на верстке, а SQL и PHP поверхностно знаком, поэтому создание запроса оказалось проблемой.
{usltopics} - через этот тег нужно получать количество топиков пользователей в указанных выше форумах В forums.topics.php вставил следующий запрос (на основе тех что рядом находятся) $usltopics = $db->query("SELECT COUNT(*) FROM $db_forum_topics AS t $join_condition WHERE ".implode(' AND ', $where))->fetchColumn(); Этот запрос показывает количество всех топиков в форуме. Подскажите, что сюда добавить, чтобы {usltopics} выводил не все топики, а все топики пользователя {$usr['id']} ?
Добавлено 16 часа спустя: ============================== Сам спросил сам ответил. С запросом уже решил, {usltopics} теперь выводит количество топиков текущего пользователя для каждого форума. Осталась одна проблема. В моем случае я буду через условие в определенном форуме скрывать кнопку добавления нового топика если у пользователя есть 1 топик уже. С кнопкой новая тема понятно, но ведь если она исчезнет после 1 топика, то ссылка будет все равно доступна по адресу /forums?m=newtopic&s=******* значит нужно в forums.newtopic.tpl скрывать тоже , но условие не хочет здесь работать, ньютопик ничего не знает о количестве топиков пользователя. Пока ломаю голову как реализовать, может кто сталкивался с подобным, или просто в курсе ? Добавлено 2 часа спустя: /////////////////////////////////////////////////////////////// Очень жаль что никто так и не ответил, но все что не делается, тоже к лучшему. Это мой опыт, сам нашел сам изучил. Теперь все что мне было нужно я сделал. Так что вопрос закрыт. Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts
|
|
This post was edited by Roffun (2016-11-11 14:45, 8 years ago) |
Macik |
|
---|---|
Увы сообщество котонти до сих пор небольшое. Поэтому ждать здесь оперативных ответов не стоит. Может и пара дней пройти. p/s/ Рад, что разобрался. p.p.s. Не знаю, что за сервис ты делаешь и на сколько критична опция блокировки новых постов после одного топика… Но имей в виду, что в твоей реализации «хитрый хакер» все равно сможет разместить дополнительный топик, просто сгенерировав POST запрос на адрес добавления нового топика /forums?m=newtopic&s=******* . это я к тому, что в теории сокрытие управляющих элементов интерфейса не гарантирует защиту от вызова конкретного функционала по «прямой ссылке». Что бы быть уверенным надо писать доп. плагин, вешать на соотв.хук и проверять условия внутри кода. https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F |
Roffun |
|
---|---|
#38057 Macik: Сервис называется предложение услуг. Любой кто может что-то предложить (верстка, дизайн, программирование и тд), сможет создать свой топик. Нюансов будет много, но только 1 топик - это избавит от лишней модерации и злоупотреблений, дублей тем. Возможность будет доступна только имея от 10 сообщений на форуме. Насчет «хитрый хакер», здесь реализована та же проверка на условие, что и для кнопки. Я это предусмотрел. Поэтому для запроса через браузер выводится нужная фраза, и через 5 секунд редирект. Также реализована проверка на заполнение 4 полей в профиле и наличие загруженного аватара. Не не заполнив поля, можно только отвечать в топиках, а свои создавать не даст, будет confirm выскакивать при нажатии на кнопку добавить топик. На данный момент меня интересует другой вопрос, где можно отключить преобразование ссылок в кликабельные ? Например в ДЛЕ это в админке выключается.
Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts
|