Im getting syntax error with queries in pg with PHP. Im not clear about how should i write tables name and variables in queries. Actually im using "TABLE_NAME" and '$var_name' inside of queries. Specifically on this code i got:
Warning: pg_query(): Query failed: ERROR: syntax error at or near "$" LINE 2: "Nombre_Prod" = COALESCE($newNombre_Prod, "Nombre_Pr...
For this query:
UPDATE public."Products" SET
"Name_Prod" = COALESCE($newName_Prod, "Name_Prod"),
"Price_Prod" = COALESCE($newPrecice_Prod, "Price_Prod"),
"Cant_Prod" = COALESCE($newCant_Prod, "Cant_Prod"),
WHERE Prod_ID = $id
AND ($newNamee_Pro IS NOT NULL AND $newName_Prod IS DISTINCT FROM Name_Prod OR
$newPrice_Prod IS NOT NULL AND $newPrice_Prod IS DISTINCT FROM Price_Prod OR
$newCant_Prod IS NOT NULL AND $newCant_Prod IS DISTINCT FROM Cant_Prod OR
)
Here's my code:
$id = $_GET['id'];
$newName_Prod = "'".$_POST['newName_Prod']."'";
$newPrice_Prod = "'".$_POST['newPrice_Prod']."'";
$newCant_Prod = "'".$_POST['newCant_Prod']."'";
$query =
'UPDATE public."Products" SET
"Name_Prod" = COALESCE($newName_Prod, "Name_Prod"),
"Price_Prod" = COALESCE($newPrecice_Prod, "Price_Prod"),
"Cant_Prod" = COALESCE($newCant_Prod, "Cant_Prod"),
WHERE Prod_ID = $id
AND ($newNamee_Pro IS NOT NULL AND $newName_Prod IS DISTINCT FROM Name_Prod OR
$newPrice_Prod IS NOT NULL AND $newPrice_Prod IS DISTINCT FROM Price_Prod OR
$newCant_Prod IS NOT NULL AND $newCant_Prod IS DISTINCT FROM Cant_Prod OR
)';
$result = pg_query($conexion,$query);