You should simply do a comparison of the sign up details. For example, check to see if usernames, real names, or e-mail addresses already exist. If they do then don't allow the duplicate.
I would also use the IP as a check, plus you can always create a confirmation e-mail with which the user would have to confirm registration (such as with this forum) and therefore you are pretty sure to get an accurate e-mail address during sign up.
e-mail address validation wouldn't hurt either.
if ($email==""){
$error=1;
} else if(eregi('^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.([a-zA-Z]{2,4})$', $email)){
} else {
$error=2;
}
That is what I would do anyway...