Hola chicos.
El siguiente código me da error y no sé por qué:
Código PHP:
//Cogemos la id_producto del posteo
$id = $_POST['id_producto'];
//asignamos el resto de variables
$nombre = $_POST['nombre'];
$precio = $_POST['precio'];
$id_categoria = $_POST['id_categoria'];
$id_tipo = $_POST['id_tipo'];
$es_menu = $_POST['es_menu'];
$es_especialidad = $_POST['es_especialidad'];
$es_sugerencia = $_POST['es_sugerencia'];
echo ('id_producto ($id): '.$id.'<br />'); //Depuración
//Definimos la query
$modificar_datos = "UPDATE productos
SET
id_producto = '$id'
nombre = '$nombre',
precio = '$precio',
id_categoria = '$id_categoria',
id_tipo = '$id_tipo',
es_menu = '$es_menu',
es_especialidad = '$es_especialidad',
es_sugerencia = '$es_sugerencia',
WHERE
id_producto = '$id'";
Me dice que:
Código:
d_producto ($id): 9
Error modificando datosYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'nombre = 'Sopa de picadillo', precio = '3.00', id_categoria = '1', id_tipo = '1'' at line 4
Como veis, parece que las variables las coge bien pero no sé que es lo que esta mal en la consulta. he probado a meterlo todo con comillas dobles y las variables con simples y al reves y a quitarle las comillas a las variables del query, pero me sigue dando el pismo fallo.
Código:
CREATE TABLE `productos` (
`id_producto` int(11) unsigned NOT NULL AUTO_INCREMENT,
`id_tipo` int(11) unsigned NOT NULL,
`id_categoria` int(11) unsigned NOT NULL,
`nombre` tinytext CHARACTER SET utf8 NOT NULL,
`precio` decimal(10,2) NOT NULL,
`es_menu` text CHARACTER SET utf8,
`es_especialidad` text CHARACTER SET utf8,
`es_sugerencia` text CHARACTER SET utf8,
PRIMARY KEY (`id_producto`),
KEY `id_tipo` (`id_tipo`),
KEY `id_categoria` (`id_categoria`),
CONSTRAINT `productos_ibfk_1` FOREIGN KEY (`id_tipo`) REFERENCES `tipos` (`id_tipo`),
CONSTRAINT `productos_ibfk_2` FOREIGN KEY (`id_categoria`) REFERENCES `categorias` (`id_categoria`)
) ENGINE=InnoDB AUTO_INCREMENT=89 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci
A ver si un ojo experto ve mi garrapata porque yo no tengo co**nes de hallarla.
Agradecido zus quedo amigos.