Por lo pronto, esto:
Código PHP:
$restar="UPDATE oferts SET rest = rest - '1' '". $querywhere;
Sin la variable contuviese esto:
Código PHP:
$querywhere = "WHERE `ID` = 6";
daría como resultado:
Código SQL:
Ver originalUPDATE oferts SET rest = rest - '1' 'WHERE `ID` = 6;
porque tienes un apostrofe de mas en el UPDATE, al final de la linea.
Su resultado puede ser de lo más inseguro...
Acostúmbrate a no poner los números como cadenas de texto en el SQL. Generan errores de proceso o conversión inesperados.