I'm trying to work out a good way to manage user submitted content and create a method to determine when spammed/poor content should be hidden.
The aim is to create comment voting similar to youtubes like/dislike comments and if the score is good show the comments, else they're invisible.
Approach
My thought is to do this via the comments table, you could create two columns rateup, ratedown.
For each rate up the comment gets the rateup colulmn is: rateup = rateup + 1
and the same for the ratedown: ratedown = ratedown + 1
You can then put a clause into your database query to only select comments if their rateup ratio is greater than a number, say -5:
WHERE (rateup - ratedown) > -5
but this would need a lot of voting up and down if a user posts many spam/poor content posts over the site?
To strengthen the approach I could add the same two columns to the user table and also update these columns to give an overlal view of the users combined content submission ratio and then display comments like so:
WHERE ((comment.rateup - comment.ratedown) > -5 ) && ((user.rateup - user.ratedown) > -5 )
Issues
Would this approach lead to instances of users creating mass fake accounts to attack good users and ruin their reputation?
What other methods could I use to help hide spammed/poor content without moderators having to manually go through everything?
comment.rating
anduser.rating
.