Sitede kullanıcıların profilleri wiki kendi katkıları hakkında bazı istatistikler var ki PHP ve MySQL kullanarak, ben, MediaWiki dayalı bir wiki ile bir site entegre ediyorum.
I the last 3 edited articles of a user in a namespace (the main one, id 0), without repeating göstermek istiyorum ve onlara bağlantılar strong>.
Bunu yapmak için, daha fazla veya daha az aşağıdakileri yapın:
// getting the article IDs
$db->query("SELECT DISTINCT rev_page
FROM revision r, page p
WHERE r.rev_page = p.page_id
AND p.page_namespace = 0
AND rev_user = {$userId}
ORDER BY r.rev_timestamp DESC
LIMIT 3");
// then the IDs are stored in $last_edited_ids...
// getting the names of the articles
$db->query("SELECT page_title
FROM page WHERE page_id
IN (" . implode($last_edited_ids, ',') . ")");
Bazı kullanıcılar için, eski bir makale düzenlenmiş son olarak gösterir, ancak 2. ve 3. sonuç doğru: Sorun ben most of the time çalışır rağmen, doğru olduğundan emin değilim olmasıdır. Ben yanlış bir şey yapıyor olması gerekir bana bir şey yapar, ancak SQL benim güçlü noktası değildir ...
İpucu: Eğer MediaWiki veritabanı şemasını (oldukça autoexplicative olduğunu) bilmiyorsanız, ona bir göz atabilirsiniz here.