la sintassi è
INSERT INTO Temp2 (fld1) SELECT Temp1.fld1
FROM tbl WHERE ....;

$appoggio deve contenere la stringa della query, non il risultato della query.

$appoggio="SELECT opere_vetraio_mano_opera.Codice, opere_vetraio_mano_opera.Titolo, opere_vetraio_mano_opera.Voce, opere_vetraio_mano_opera.Var1, opere_vetraio_mano_opera.Var2, opere_vetraio_mano_opera.Unitadimisura, opere_vetraio_mano_opera.Prezzo, opere_vetraio_mano_opera.Quantita, (opere_vetraio_mano_opera.Prezzo*$POST) AS Totale FROM opere_vetraio_mano_opera";

eventualmente qui spezza
... (opere_vetraio_mano_opera.Prezzo *" . $POST . ") AS Totale ..

e anche qui
.. SELECT * FROM " . $appoggio);
ciao
sergio