Hallo Jessica,
$userdata[0] ist immer die IP plus einen Leerzeichen also frage bitte auch danach in der Form:
if (array_search($ip.' ', $ip_vorhanden)==false)
eine bessere Möglichkeit schein mir bei array_push mit trim($userdata[0]) zu arbeiten und von vornherrein if (in_array($ip, $ip_vorhanden)) abzufragen
Gruß aus Berlin!
eddi