Добавить рандом
Вывести уведомления рандомным методом
Можно ли вывести уведомления, которые приходят при рассылке в клубе, рандомным методом?
Т.е. в разных клубах делается рассылка пользователям. Допустим, делается сто рассылок. Как вывести не все сто уведомлений в профиле пользователя, а только десять случайных? И чтобы при обновлении страницы, каждый раз уведомления выводились рандомом!
А для того чтобы выводить 10 — LIMIT 10
В какой строчке?
Строка 1089
$sql = "SELECT m.*, m.from_id as sender_id {$this->inDB->select} FROM cms_user_msg m WHERE m.from_id < 0 {$this->inDB->where} {$this->inDB->order_by}\n"; if ($this->inDB->limit){ $sql .= "LIMIT {$this->inDB->limit}"; }
{$this->inDB->order_by}\n
Parse error: syntax error, unexpected T_STRING in S:\home\inst.local\www\components\users\model.php on line 1096
и ничего не загружается.
$sql = "SELECT m.*, m.from_id as sender_id {$this->inDB->select} FROM cms_user_msg m WHERE m.from_id < 0 {$this->inDB->where} {ORDER BY RAND()}\n"; if ($this->inDB->limit){ $sql .= "LIMIT {$this->inDB->limit}"; }
Написано, что в папке 16 сообщений, но не одно из них не выводится. При обновлении страницы, картина не меняется. Что не так?
если новых сообщений больше 10 — выводим 10 случайных,
если новых сообщений меньше 10 — выводим все,
если все сообщения просмотрены — выводим 10 последних.
Вместо
{$this->inDB->order_by}\n
в итоге должно быть
$sql = "SELECT m.*, m.from_id as sender_id {$this->inDB->select} FROM cms_user_msg m WHERE m.from_id < 0 {$this->inDB->where} ORDER BY RAND()"; if ($this->inDB->limit){ $sql .= "LIMIT {$this->inDB->limit}"; }
Нужны дополнительные условия. Даже представить не могу, зачем такое делать. Это ведь оповещения, они должны сортироваться по дате, иначе какой в них смысл.если новых сообщений больше 10 — выводим 10 случайных,
если новых сообщений меньше 10 — выводим все,
если все сообщения просмотрены — выводим 10 последних.
Для вывода только 10ти уведомлений — в конце запроса LIMIT 10