Specifically regarding the checkboxes, if you're able to get that data out of the database dynamically then do what I initially mentioned and read the facated search documentation. It has info on how to get queries created to properly output the data needed to create the checkbox list with values and display names.
Secondly you need to find out how you're going to associate the branch/location with your zip code search. What will happen when you search for a zip code then check branches left in the search results?
It doesn't seem feasible to have a zip code search along with a checkbox list of brances. It seems more likely you'd have a search box for zip or name and diplay a list of branches found with links to their detail page.