Partindo do pressuposto de que um usuário pode comprar apenas um de cada produto (sempre e para todos os produtos).
ALTER TABLE purchase ADD UNIQUE KEY (`UserID`, `Product`); -- run this just once. this changes the table
INSERT IGNORE INTO purchase (UserID, Product, Price) VALUES ('$userID', '$product', '$price');
Esteja ciente de que isso o impede de comprar qualquer produto várias vezes, o que pode não ser o resultado desejado.