This document proposes a two-stage solution for secure location-based queries that improves performance. The first stage uses oblivious transfer to privately determine the user's location within a public grid. The second stage uses private information retrieval for the user to efficiently retrieve an appropriate data block from the private grid. The solution introduces a formal security model and analyzes the security of the novel protocol. It aims to achieve privacy protection for both the user and server in location-based services.