What are the potential pitfalls of using IP-based blocking for a Like button in PHP?

Potential pitfalls of using IP-based blocking for a Like button in PHP include the possibility of blocking legitimate users who share the same IP address (such as in a shared network or behind a proxy server), as well as the potential for IP spoofing. To solve this issue, it is recommended to implement a more robust authentication system, such as requiring users to create accounts and log in before being able to like a post.

// Example of implementing a user authentication system for a Like button
session_start();

// Check if user is logged in
if(isset($_SESSION['user_id'])) {
    // Display Like button
    echo '<button>Like</button>';
} else {
    // Display message prompting user to log in or create an account
    echo 'Please log in or create an account to like this post.';
}