Ponieważ twoją bazą danych jest MySQL, możesz po prostu użyć WSTAW DO ... NA ZDUPLIKOWANYM KLUCZE składni i usuwaj rzeczy związane z procedurą składowaną.
INSERT INTO products (
product, price, stock, active
) VALUES (
$product, $price, $stock, $active
) ON DUPLICATE KEY UPDATE
product=VALUES(product)
, price=VALUES(price)
, stock=VALUES(stock)
, active=VALUES(active)
Tylko pomysł. Może być czystszą i szybszą alternatywą do napisania.
Mam nadzieję, że to pomoże