I've recently implemented a working custom liking/disliking function for my comics site.

but I feel it’s pushing me towards implementing a login system for all users… which I really don’t want to have to do (for my sake and my fans' sake)

Currently, the function works by:

1) Passing button value (id = 'like' or id = 'dislike') via Jquery to php script

2) script will first check if an ip exists in the database against that given comic id... if not it will insert user's IP and current comic ID and increment total likes for a given comic id... if it already exists, it will remove that user’s information and decrement total likes.

The issue is, what happens if multiple fans “like” or “dislike” a comic from the same IP (net café, etc), or the same user goes and likes a comic from another computer… So I was thinking the way to solve that would be generate a unique value for the user’s session and store it against their IP.

But what if that user wanted to come back at a later point after their unique session ID has expired and change their like to a dislike… how would the computer know it’s them? Or what happens if the same user expires their session ID somehow (logs off then logs back in, closes browser, etc) and now can vote multiple times?

So, I have a couple questions:

In this case, do I have to create a login system?

How would making a user have to log in to like my images affect their willingness to do so?


1 Answer 1


You have two options: (1) Creating a login system or (2) Leave it out in the open.

  1. If you create a login system you will have less users, but quality users really interested in your site. Data will be accurate. But you'll have a hard time drawing attention to your site since (unless you're a member) you can only view.

  2. Leaving the system out in the open making everyone online a possible voter will make your site more popular quickly, but data may be a flaw. You'll have little chance of checking accuracy on data, but visitors will be higher than option 1

Doing something with coockies, IP addresses, timers and other techniques will not only make things complicated, It'll also confuse your users. Go with option 1 or 2, not something in between!

  • 1
    I once designed something that was a hybrid of the two. Anonymous liking was possible, but slightly ephemeral and only best effort. The user could then register if they used the system and wanted more reliable tracking. The reported popularity for each item was not the number of likes but a weighted deviation from the mean (presented as a colored bar), where the anonymous likes were weighted far less than those of the registered users.
    – Peter
    Commented Feb 22, 2013 at 20:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.