Regarding question 2, use just one connection. Either keep the connection in a class, and then call that class to do anything with the database, or have a connection object defined globally, and then use that object for any database calls. As much as possible use client side, read-only...