OK, if I understand it right you want a user to be able to see a specific link only once, give him the ability to vote and then never show that link to the user again ?
If so, you could add a new field to the link row that holds the user_id's of the members that voted. You could seperate them with commas for example. Then use a query to fetch the link and explode the field that holds the user_id's that already voted. Afterwards, you can do a check if the user_id is in the obtained array, if so, it should show the next link, if not, it should show the link. Below an example to clarify what I mean:
// User voted
// Fetch the user id's that already voted
$getoldusers = mysql_query("SELECT users_voted FROM `votes` WHERE link_id=$link_id");
$oldusers= mysql_fetch_assoc($getoldusers);
// Append current user_id to users_voted row
mysql_query("UPDATE votes SET users_voted='$oldusers[users_voted],$user_id' WHERE link_id = $link_id");
// Check if user already voted
$checkuser = mysql_query("SELECT users_voted FROM `votes` WHERE link_id=$link_id");
$users = mysql_fetch_assoc($checkuser);
$user = explode(",",$users['users_voted']);
if (in_array($user_id,$user)) {
// User already voted, show next link
} else {
// User did not yet vote, show link
}
Hope that helps a bit.