Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/04/2010, 11:30
Avatar de mahuro
mahuro
 
Fecha de Ingreso: abril-2006
Mensajes: 15
Antigüedad: 18 años, 6 meses
Puntos: 0
Problema con consulta UPDATE

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.

Última edición por mahuro; 27/04/2010 a las 11:38 Razón: Edito porque no había metido los datos de la tabla :P