PHP - insert

 
Vista:

insert

Publicado por german (9 intervenciones) el 03/12/2008 15:30:29
hola gente tengo este codigo:

$query = "INSERT INTO productos (titulo, comentario, rubro, nombrefoto, fecha) VALUES($titulo, $comentario, $familia, $foto[0], $fecha)";

mysql_query($query, $coneccion)or die(mysql_error());

la variable familia en values tiene el valor artesanias y el error que me tira en mysql_error es este:

Unknown column 'artesanias' in 'field list'

y no se por uqe..si alguien me puede dar una mano se lo agradeceria
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:insert

Publicado por Sandra (48 intervenciones) el 03/12/2008 15:45:49
El campo rubro de qué tipo es?
Probaste de poner $familia entre comillas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:insert

Publicado por german (9 intervenciones) el 03/12/2008 16:50:19
hola sandra gracias por responder el campo rubro es de tipo varchar de 20 no probe con las comillas por que estan todos escritos igual si fuese eso tendria que hacer drama ya en titulo al menos eso creo lo pruebo por las dudas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:insert

Publicado por german (9 intervenciones) el 03/12/2008 17:00:32
$query = 'INSERT INTO productos (titulo, comentario, rubro, nombrefoto, fecha) VALUES('."$titulo".','. "$comentario".','. "$familia".','. "$foto[0]".','. "$fecha".')';

mysql_query($query, $coneccion)or die(mysql_error());

asi me tira el mismo error

$query = 'INSERT INTO productos (titulo, comentario, rubro, nombrefoto, fecha) VALUES("$titulo", "$comentario", "$familia", "$foto[0]", "$fecha")';

mysql_query($query, $coneccion)or die(mysql_error());

y asi me guarda los nombres de las variables supuestamente php parsea los strings que estan entre comillas dobles no??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:insert

Publicado por Sandra (48 intervenciones) el 03/12/2008 17:18:38
Yo lo que haría es un die del insert, a ver que tira.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:insert

Publicado por german (9 intervenciones) el 03/12/2008 21:32:48
sandra el codigo tiene un die y el error que tira es el que comente anteriormente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:insert

Publicado por sandra (48 intervenciones) el 04/12/2008 12:33:41
OK el error que tira el mysql es:
Unknown column 'artesanias' in 'field list'
pero yo digo que pongas un die($query) para ver exactamente qué está tratando de insertar. Además estaría bueno si podés mostrarme la estructura de la tabla a ver cómo está. Tendrás alguna columna que se llama artesanías??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:insert

Publicado por Reaven (48 intervenciones) el 04/12/2008 16:34:08
Todos los campos de tipo texto en mysql deben ir entrecomillados. En tu caso seria algo asi:

$query = "INSERT INTO productos (titulo, comentario, rubro, nombrefoto, fecha) VALUES($titulo, $comentario, $familia, $foto[0], $fecha)";

tu query original ,(ademas de que ararys dentro de un string...problemos problemos..)

$query = "INSERT INTO productos (titulo, comentario, rubro, nombrefoto, fecha) VALUES('$titulo', '$comentario',' $familia','". $foto[0]."',' $fecha')";

Prueba y me cuentas. Las comillas dobles admiten comillas simples en su interior y el array debe estar fuera de las comillas dobles pero tambien debe estar dentro de las comillas simples. Un saludo y a ver si te funciona . Y por cierto , ninguna de las variables debe contenter caracteres especiales asi que yo haria un addslashes a todas las variables menos a fecha ;). un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:insert

Publicado por german (9 intervenciones) el 05/12/2008 00:17:30
reaven gracias ya lo he solucionado escribiendolo asi como vos decis no sabia que los nombres de bariables tambien iban entre comillas muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar