сам Получатель не может ничего скорректировать
row_number() over (partition by `class_messages_chat`.`chat_id` order by class_messages.id desc) rn
order by `class_messages_chat`.`chat_id`, class_messages.id desc
order by B.mess_id desc
where A.Rn = 1
но возвращает 0 результатов
where A.Rn = 1
@prev as before_prev,
@rn as before_rn,
IF(@prev <> A.chat_id, @rn:=1,@rn), @prev:= A.chat_id, @rn:=@rn+1 AS rn,
@prev as after_prev,
@rn as after_rn
if(musqli_num_rows($check_user) > 0)
можно заменить на:
if($user = mysqli_fetch_assoc($check_user))