Ce '?'
n'est pas un espace réservé, c'est un point d'interrogation littéral. Les espaces réservés ne sont pas cités. En l'état, vous avez deux espaces réservés et trois valeurs ont tenté d'être liées.
Alors essayez :
$sth = $dbh->prepare("SELECT users.userID,fname,lname,status FROM users INNER JOIN friends ON users.userID = friends.friendID WHERE friends.userID = ? AND ((friends.status LIKE 'group%' OR friends.status = 'friends') OR (users.status = ?) OR (users.userID = ?)) ORDER BY friends.status,lname,fname ASC");