Trigger syntax on phpmyadmin
It may be more efficient to simply use a cascading delete via a foreign key. When a row with the same product_code is deleted from products, it will be deleted in sales_detail as well.

ALTER TABLE sales_details
ADD FOREIGN KEY fk_product_code(product_code)
REFERENCES products(product_code)
ON DELETE CASCADE;


But if you'd like to use a trigger to delete rows from the products table that have the same product_code as the row deleted, this should do the trick:

 delimiter // 
 CREATE TRIGGER removeforeing 
  BEFORE DELETE ON products
  FOR EACH ROW BEGIN
    DELETE FROM sales_details WHERE product_code = OLD.product_code;
 END// 
 delimiter ;


Edit

Per documentation,


  Within the trigger body, you can refer to columns in the subject table
  (the table associated with the trigger) by using the aliases OLD and
  NEW. OLD.col_name refers to a column of an existing row before it is
  updated or deleted. NEW.col_name refers to the column of a new row to
  be inserted or an existing row after it is updated.