How to make a query that asks you for a value each time
Put a prompt in square brackets, like [Which town?], as a condition in Base by Zaweba, and the query asks for the value every time it runs.

Write the prompt in square brackets as the condition. In Base by Zaweba's query designer, a condition such as [Which town?] tells Base to ask that question every time the query runs, then use your answer as the filter. This is a parameter query, and it lets one saved query do the work of many.
The dialog remembers your last answers, so running the same report for the same town twice in a row is just a click.
Setting one up
Build the query as usual in the visual query builder: pick the tables, add the fields you want to see, and set the sort. In the condition for the field you want to filter on, type the question in square brackets. For a Town field, [Which town?]. For a membership type, [Which type of member?].
Phrase it as something a person would understand at a glance, since that text is exactly what appears in the dialog. Save the query with a name that says what it does, for example Members in a town.
Asking for more than one value
Prompts can sit on different fields, so one query can ask for a town and a membership type together, and the dialog remembers the last answer to each. A prompt on a date field works the same way, which suits queries such as bookings on a given day or members who joined since a date you choose.
Keep it to the questions that really change. If the same value goes in every time, write it into the condition directly instead of asking for it.
Where the prompt appears
Running the query from the navigation pane shows the dialog. So does anything built on it. A report based on a parameter query asks first and then prints for just those records. Exporting the query to CSV asks too. A button on a form that runs the query or prints its report brings up the same question, which makes a tidy front end for people who never open the query designer.
That is the real strength of a parameter query: you design it once and anybody can use it without knowing how it works.
Prompts on the PHP site
If you export the database as a PHP and MySQL website, saved queries become read-only pages. A parameter query's page shows a small form with a box for each prompt, and a date box where the field is a date. Someone checking bookings from a phone types the dates and gets the list.
Combining it with other query tools
Parameter prompts sit happily alongside the rest of the query designer. Totals can count or sum the records that match, grouped by another column, so a query can ask for a year and show the total spent by each customer in it. The unique values only option gives a clean list without repeats. A calculated column, such as Gross: [Quantity] * [UnitPrice] * 1.2, works on the filtered records like any other.
Small things that save confusion
Make sure what people type matches how the data is stored. If towns are typed in capitals in the table, asking for leeds may find nothing. Value lists and input masks on the table keep data consistent, which makes prompts behave predictably. And when a query returns nothing at all, check the answers in the dialog first, since it remembers what was typed last time.
Base by Zaweba shows the SQL behind every query on its SQL tab, so you can always see exactly what the prompt is being compared with.