Yes, ORDER BY RAND() can be very slow in larger result-sets.
An option is to fetch resultset with this statement (into an array):
SELECT sName FROM bpoint WHERE placeID=?;
After that - use array_rand($resultset) to get a randomized item from the $resultset query.