Deze '?'
is geen tijdelijke aanduiding, het is een letterlijk vraagteken. Placeholders worden niet geciteerd. Zoals het is, heb je twee tijdelijke aanduidingen en drie waarden geprobeerd te binden.
Dus probeer:
$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");