Créer une nouvelle table avec user_id
, comment_id
et vote TINYINT(1)
.
Une valeur de 1
en vote
est un pouce levé, une valeur de 0
en vote
est un pouce vers le bas.
Avoir une CLÉ UNIQUE contrainte sur (comment_id, user_id)
.
Si vous suivez ce qui précède, il sera facile de vérifier si un utilisateur a voté sur un commentaire spécifique, si vous souhaitez pouvoir voir rapidement (comme dans l'exécution rapide) tous les commentaires qu'un utilisateur a faits, vous devriez également ajouter un INDEX
à user_id
.
Lorsqu'un utilisateur vote, vous pouvez utiliser REPLACE INTO
à user_comment_thumbs
, comme ci-dessous :
REPLACE INTO `user_comment_thumbs` (user_id,comment_id,vote)
VALUES (@user_id, @comment_id, @vote);
Si l'utilisateur a déjà voté, l'entrée dans le tableau sera mise à jour, sinon une nouvelle ligne sera insérée.