Intellect Board — cистема управления сайтомПостроение сайта на основе форума |
Intellect Board — cистема управления сайтом » Техническая поддержка версии 2.22 » ОГРАНИЧЕНИЕ КОЛИЧЕСТВА ЛИЧНЫХ СООБЩЕНИЙ |
<<Назад Вперед>> | Модераторы: aerograf, wsx | Печать |
assessor
Долгожитель форума
Всего сообщений: 495 Рейтинг пользователя: 14 Ссылка Дата регистрации на форуме: 13 фев. 2007 |
Прошу специалистов набросать примерный код проверки и запрета отправлять личные сообщения, если превышен предел, установленный на форуме. |
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик Откуда: Москва Всего сообщений: 3299 Рейтинг пользователя: 70 Ссылка Дата регистрации на форуме: 29 сен. 2001 |
Выглядит это примерно так: $sql = "SELECT COUNT(*) FROM ".$GLOBALS['DBprefix']."PersonalMessage pm ". "WHERE pm__owner=".$GLOBALS['inuserid']; $res=db_query($sql,$link); $tmp=db_fetch_row($res)); db_free_result($res); if ($tmp>1000) { error('Превышен лимит сообщений в ящике! Чтобы отправить новое сообщение, удалите часть отправленных или полученных вами!'); } Вставлять в процедуры do_send, reply и newmsg файла messages.php. ---
Спорить со мной по поводу того, что в IntB будет, а чего нет -- бесполезно! |
assessor
Долгожитель форума
Всего сообщений: 495 Рейтинг пользователя: 14 Ссылка Дата регистрации на форуме: 13 фев. 2007 |
Профиль | Сообщить модератору | Игнорировать
NEW! Сообщение отправлено: 7 февраля 2013 19:50 Сообщение отредактировано: 7 февраля 2013 19:54
4X_Pro, благодарю. $sql = "SELECT COUNT(*) FROM ".$GLOBALS['DBprefix']."PersonalMessage pm ". "WHERE pm__owner=".$GLOBALS['inuserid']; А что такое pm ? |
upriamui |
assessor написал: А что такое pm ? Личка. Privat Messange Я сдесь вижу многократное обращение к базе с выборкой, и ограничением до 1000. Видимо 4X_Pro объявил это $sql = "SELECT COUNT(*) FROM ".$GLOBALS['DBprefix']."PersonalMessage pm " переменной, назвав всётаки Personal, а не Privat. Поправте, если не прав... |
assessor
Долгожитель форума
Всего сообщений: 495 Рейтинг пользователя: 14 Ссылка Дата регистрации на форуме: 13 фев. 2007 |
Профиль | Сообщить модератору | Игнорировать
NEW! Сообщение отправлено: 11 февраля 2013 20:44 Сообщение отредактировано: 11 февраля 2013 20:48
$tmp=db_fetch_row($res)); Результат - Массив, а не значение. Использовать в расчетах $tmp[0] |
assessor
Долгожитель форума
Всего сообщений: 495 Рейтинг пользователя: 14 Ссылка Дата регистрации на форуме: 13 фев. 2007 |
Профиль | Сообщить модератору | Игнорировать
NEW! Сообщение отправлено: 12 февраля 2013 13:11 Сообщение отредактировано: 12 февраля 2013 17:22
4X_Pro, благодарю. Проверка поставлена. Лишнее уже не отправят. |
Dearheart
Почетный участник
Откуда: Нижний Новгород Всего сообщений: 130 Рейтинг пользователя: 4 Ссылка Дата регистрации на форуме: 27 дек. 2007 |
Если вставить в do_send() то будет проблема, например юзер накатал длинное сообщение в пол страницы, нажал отправить, а оно бах - и вылетело с ошибкой. А сообщение при этом пропадёт. Получается, что он должен удалить лишние сообщения, а потом снова набирать эти пол страницы, которые он хотел отправить - не хорошо.... ---
Форум для родителей детей с ВПС: http://forum.dearheart.ru |
assessor
Долгожитель форума
Всего сообщений: 495 Рейтинг пользователя: 14 Ссылка Дата регистрации на форуме: 13 фев. 2007 |
Dearheart написал: юзер накатал длинное сообщение в пол страницы, нажал отправить У меня нет возможности ввести сообщение, если кол-во сообщений равно максимальному. Т.е. формы ввода нет. |
<<Назад Вперед>> | Модераторы: aerograf, wsx | Печать |
Intellect Board — cистема управления сайтом » Техническая поддержка версии 2.22 » ОГРАНИЧЕНИЕ КОЛИЧЕСТВА ЛИЧНЫХ СООБЩЕНИЙ |
1 посетитель просмотрел эту тему за последние 10 минут |
В том числе: 1 гость, 0 скрытых пользователей |
Последние | |
Ограничение доступа не отображаются разделы Архив версий Установка стиля на Intellect Board 2.22 Завершилась работа над новой версией 3.00 |
Самые активные 5 тем | |