• Web sitemizin içeriğine ve tüm hizmetlerimize erişim sağlamak için Web sitemize kayıt olmalı ya da giriş yapmalısınız. Web sitemize üye olmak tamamen ücretsizdir.
  • Sohbetokey.com ile canlı okey oynamaya ne dersin? Hem sohbet et, hem mobil okey oyna!
  • Soru mu? Sorun mu? ''Bir Sorum Var?'' sistemimiz aktiftir. Paylaşın beraber çözüm üretelim.

XenForo XenForo bütün kullanıcıların mesaj sayılarını yeniden hesaplama ve güncelleme

Pisadam

CEO
Üyelik Tarihi
2 Nis 2008
Konular
1,150
Mesajlar
12,622
MFC Puanı
20,450
XenForo'da bütün kullanıcıların mesaj sayılarını gerçekçi bir şekilde yeniden hesaplayıp güncelleyecek bir sorgu paylaşacağım;

Bu sorgu ile artık bütün kullanıcıların mesaj sayıları olduğu gibi güncellenecektir. Admincp'den yükseltilen mesajlar, silinen mesajlar gibi bütün herşeyi hesaplayacaktır. Forum sitenizdeki yöneticiler bu sorgu ile artık mesaj sayılarını istediği gibi yükseltip düşüremeyecektir.

Eğer sizde bütün kullanıcılarınızın mesaj sayıları gerçeği gibi olsun istiyorsanız aşağıdaki sorguyu phpmyadmin'e giriş yaparak çalıştırınız;

PHP:
UPDATE xf_user AS user
SET message_count = (
    SELECT COUNT(*)
    FROM xf_post AS post
    LEFT JOIN xf_thread AS thread ON (thread.thread_id = post.thread_id)
    WHERE post.user_id = user.user_id
    AND post.message_state = 'visible' AND thread.discussion_state = 'visible'
    GROUP BY post.user_id
);

Eğer bazı forumları bunun dışında tutmak istiyorsanız aşağıdaki sorguyu forum id numarasını yazarak çalıştırınız. Örneğin forum oyunlarındaki mesajları eğer kullanıcı mesaj sayısına eklettirmiyorsanız o forumun id numarasını yazabilirsiniz. ( 1,2,3 yazan yere bu forumların id numarasını yazın )

PHP:
UPDATE xf_user AS user
SET message_count = (
    SELECT COUNT(*)
    FROM xf_post AS post
    LEFT JOIN xf_thread AS thread ON (thread.thread_id = post.thread_id)
    WHERE post.user_id = user.user_id
    AND thread.node_id NOT IN (1,2,3)
    AND post.message_state = 'visible' AND thread.discussion_state = 'visible'
    GROUP BY post.user_id
);
 
Üst