Well, he's right .... and wrong.
You certainly don't only have a contract when you have the goods. That much is true. The basic elements are :
- offer
- acceptance
- exchange of consideration .....
but that latter can include promise of exchange.
It's obvious when thought about. If you were only in a binding contract when you have the goods, you could hand over the money and then be told "sorry, no binding contract and I'd changed my mind".
Even more obvious are contracts for services. I promise to pay when my car is serviced, the house's windows washed, the gardener (if I had one) cuts the grass, etc. I am committed if I promise to pay on completion, and the job is then satisfactorily completed.
But, of course, Blitzen is right in his primary point, that what miXer had been told about a shop advertising at a given price obliging them to sell at that price, is incorrect. It does not, for the reasons others have given, namely "invitation to treat".
And that slightly obscure phrase, for anyone not familiar with it, means that the advert/price is an invitation by the shop for buyers to make an offer. In the offer/acceptance/exchange process outlined above, the "offer" is when the customer comes in and says "I'd like to buy that <whatever> for the £x on the price ticket". The shop are fully entitled to realise their mistake and decline to accept the offer, and the contract is therefore not made.