Foros del Web » Programando para Internet » PHP »

insert to ?

Estas en el tema de insert to ? en el foro de PHP en Foros del Web. Hola a todos, tengo una duda. Tengo un INSERT que no me da error pero no hace absolutamente nada. Esta mal escrito? Es incorrecto darle ...
  #1 (permalink)  
Antiguo 08/04/2011, 06:57
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
insert to ?

Hola a todos,

tengo una duda.
Tengo un INSERT que no me da error pero no hace absolutamente nada. Esta mal escrito? Es incorrecto darle el nombre de la variable?
Código:
$insertar="INSERT INTO em_specific_price (id_specific_price,id_product,id_shop,id_currency,id_country,id_group,price,from_quantity,reduction,reduction_type,from,to) VALUES ('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]')";

mysql_query($insertar);


En cambio sin el nombre de la variable en el siguinete código me lo inserta correctamente.
Código:
$insertar="INSERT INTO em_specific_price VALUES ('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]')";

mysql_query($insertar);
  #2 (permalink)  
Antiguo 08/04/2011, 07:04
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: insert to ?

Tu problema es de sintaxis SQL no de código PHP, si quieres conocer el error exacto imprime el valor de mysql_error() después de la consulta que da error, ya verás...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 08/04/2011, 07:07
Avatar de luis010182  
Fecha de Ingreso: julio-2009
Ubicación: Argentina - Capital Federal
Mensajes: 382
Antigüedad: 14 años, 9 meses
Puntos: 27
Respuesta: insert to ?

por lo que se ve esta bien hace un echo de
Código PHP:
$insertar="INSERT INTO em_specific_price (id_specific_price,id_product,id_shop,id_currency,id_country,id_group,price,from_quantity,reduction,reduction_type,from,to) VALUES ('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]')"
y despues fijate la sintasis, o ponela en phpmyadmin o un cliente mysql que user y fijate que haces
  #4 (permalink)  
Antiguo 08/04/2011, 07:23
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Respuesta: insert to ?

Cita:
Iniciado por pateketrueke Ver Mensaje
Tu problema es de sintaxis SQL no de código PHP, si quieres conocer el error exacto imprime el valor de mysql_error() después de la consulta que da error, ya verás...
El problema es que no me lanza ningun error en pantalla.

Al hacer un echo me sale:
INSERT INTO em_specific_price (id_specific_price,id_product,id_shop,id_currency, id_country,id_group,price,from_quantity,reduction, reduction_type,from,to) VALUES ('1','1','0','0','0','1','111','1','0.000000','amo unt','0000-00-00 00:00:00','0000-00-00 00:00:00')

que creo parece correcto
  #5 (permalink)  
Antiguo 08/04/2011, 07:35
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 2 meses
Puntos: 128
Respuesta: insert to ?

Probaste ejecutando el insert directo a tu bd?
__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #6 (permalink)  
Antiguo 08/04/2011, 07:44
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Respuesta: insert to ?

Poniendo mysql_error($insertar);


$link=Conectarse();
echo "Conexión con la base de datos conseguida.<br>";
mysql_error($link);
$gestor = fopen ("preusgrups.csv","r");
while ($data = fgetcsv ($gestor,1000,";"))
{
$insertar="INSERT INTO em_specific_price (id_specific_price,id_product,id_shop,id_currency, id_country,id_group,price,from_quantity,reduction, reduction_type,from,to) VALUES ('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]')";
mysql_query($insertar,$link);
mysql_error($insertar);

}


Warning: mysql_error() expects parameter 1 to be resource, string given in ...

Pero me quedo igual. Alguien melo puede traducir a terricola?
  #7 (permalink)  
Antiguo 08/04/2011, 07:49
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: insert to ?

por favor, lee el manual...
http://php.net/mysql_error

¿cuando dije que usaras la consulta como argumento de la función mysql_error()?

no, solo imprimela tal cual después de la consulta de error...
Código PHP:
$insertar="INSERT INTO em_specific_price (id_specific_price,id_product,id_shop,id_currency,id_country,id_group,price,from_quantity,reduction,reduction_type,from,to) VALUES ('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]')";

mysql_query($insertar);
echo 
mysql_error(); 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 08/04/2011, 10:15
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Respuesta: insert to ?

Perdon por mi ignorancia.
El error es:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from,to) VALUES ('2','1','0','0','0','2','122','1','0.000001','amo unt','0000-00-' at line 1

Pero no veo cual es.
Lo bueno es que si quito la variable from y la variable to funciona perfectamente.
  #9 (permalink)  
Antiguo 08/04/2011, 10:28
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: insert to ?

bien, ahora la razón es bien sencilla... ¿has leído algún manual de SQL antes?

porque deberías... ya que las palabras FROM y TO son reservadas por el mismo lenguaje, y de ahí la razón de que siempre deberíamos asignar nombres de columna respetando las palabras reservadas....

osea, no usarlas para acabar pronto... ¿alguna solución?

si... la hay, solo se deben usar los backticks (o comillas dobles, dependiendo del RDBMS) para tratar dichas palabras como strings, y no como identificadores internos...

Cita:
`from`, `to`
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #10 (permalink)  
Antiguo 08/04/2011, 10:39
Avatar de da2
da2
 
Fecha de Ingreso: abril-2003
Ubicación: Catalunya
Mensajes: 239
Antigüedad: 21 años
Puntos: 0
Respuesta: insert to ?

ya se que las palabras FROM y TO de usan para en el lenguaje pero no sabia que pudieran dar tantos problemas aun estando dentro del parentesis con las demas variables.

Gracias por tu paciencia y tus ganas de que los demas apendan.
Un saludo.

Etiquetas: insert
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:01.