Foros del Web » Programando para Internet » PHP »

No guarda en la DB

Estas en el tema de No guarda en la DB en el foro de PHP en Foros del Web. Hola y saludos a todos, tengo un codigo que supuestamente debe subir dos archivos al servidor y luego guardar alguna informacion en una tabla. Los ...
  #1 (permalink)  
Antiguo 19/06/2006, 15:55
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 20 años, 10 meses
Puntos: 8
No guarda en la DB

Hola y saludos a todos, tengo un codigo que supuestamente debe subir dos archivos al servidor y luego guardar alguna informacion en una tabla.

Los archivos los sube sin problemas, pero no guarda la informacion en la tabla, aqui les pongo mi script.
Código PHP:
$rutap "../img/thumb/";
            
$rutab "../img/";
            
            if (!(
copy($fotop$rutap.$fotop_name))) {
                echo 
"Error al copiar la foto pequeña.";
            }
            elseif (!(
copy($fotob$rutab.$fotob_name))) {
                echo 
"Error al copiar la foto grande.";
            }
            
            
$cl->dbConsult("INSERT INTO productos (pro_code, pro_name, sec_code, pro_descripcion, pro_precio, pro_preciooferta, pro_photo, pro_bigphoto) VALUES ('".$_POST['codigo']."', '".$_POST['producto']."', '".$_POST['sector']."', '".$_POST['descripcion']."', '".$_POST['precio']."', '".$_POST['oferta']."', '".$fotop_name."', '".$fotob_name."');");
            
            
header("location: productos.php");
            exit(); 
Por favor si ven algun error, ayudenme
__________________
El aprendiz.
  #2 (permalink)  
Antiguo 19/06/2006, 16:19
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 2 meses
Puntos: 3
En tu query despues de VALUES...cuando quieras pasarle el valor de una variable,,.prueba asi:

VALUES ('$_POST['codigo']') o bien te quedaria mas entendible crear una variable:
$codigo=$_POST['codigo'];

VALUES ('$codigo')

Y no olvides hacer el include de tu conexion a la BD.
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #3 (permalink)  
Antiguo 19/06/2006, 19:18
okram
Invitado
 
Mensajes: n/a
Puntos:
Cita:
Iniciado por B**
En tu query despues de VALUES...cuando quieras pasarle el valor de una variable,,.prueba asi:

VALUES ('$_POST['codigo']')
Correccion... simplemente no puedes hacer eso... estas creando un error de cadenas: '$_POST['codigo']'

Estas creando tres cadenas separadas en la consulta a la BD, y pues obviamente te mandara error... La segunda opcion es correcta, la de crear un variable auxiliar, pero en el codigo original esta usando concatencaion, lo cual tambien es valido....

Veo que para las consultas usas un clase... tal vez es error de tu clase.... verifica la conexion y todo eso..., ademas, es necesario ese ultimo ; que colcoas antes de cerrar la cadena de la consulta:??
...name."', '".$fotob_name."');");

Prueba borrandolo...

Salu2
  #4 (permalink)  
Antiguo 19/06/2006, 19:54
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 2 meses
Puntos: 3
Si, tienes razon.. nunca lo habia hecho asi, pero pense q funcionaba..
Pero como dices ,creando una variable ya jala..
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #5 (permalink)  
Antiguo 19/06/2006, 20:58
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 20 años, 10 meses
Puntos: 8
La clase funciona, es mas tengo 3 tablas mas que mantengo con esa misma funcion, pero no entiendo porque en esta no me guarda los datos en la base de datos, todo esta identico, a excepcion que en esta tabla hay mayor cantidad de campos, la verdad nunca me habia pasado esto, por eso pense que habria algo que yo no me hubiera dado cuenta, pero aun sigo sin encontrar respuesta.
__________________
El aprendiz.
  #6 (permalink)  
Antiguo 20/06/2006, 14:01
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 20 años, 10 meses
Puntos: 8
y lo mas gracioso de todo es que no bota ningun error.
__________________
El aprendiz.
  #7 (permalink)  
Antiguo 20/06/2006, 14:12
Avatar de Azrael666  
Fecha de Ingreso: noviembre-2004
Mensajes: 652
Antigüedad: 19 años, 4 meses
Puntos: 1
pro_code, pro_name, sec_code, pro_descripcion, pro_precio, pro_preciooferta, pro_photo, pro_bigphoto

son todos los campos que tiene esa tabla?... si son todos los campos cual es el key?... lo tienes autoincremental?.. si no es asi... lo incrementas antes de insertarlo??

y si no son todos y tienes otro campo key (id por ejemplo) es autoincremental?

te lo digo porque a mi me daba un fallo al insertar.. no me daba errores pero no insertaba.. y es porque el key no era autoincremental y fallaba ahi.. miralo a ver si es por eso..
__________________
ALOZORRO v5.0 (ahora en .es)
  #8 (permalink)  
Antiguo 20/06/2006, 14:24
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 4 meses
Puntos: 34
No se donde estas creando el obj $cl, y menos que contiene esta classe. Lo seguro es que esta si tenga algún método de debug, buscalo y usalo. Sino, intenta con las funciones mysql_ usando el or die, ej:
mysql_query("insert into....") or die (mysql_error());
Ahí veras el error propio de mysql.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #9 (permalink)  
Antiguo 20/06/2006, 15:20
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 20 años, 10 meses
Puntos: 8
Gracias Nicolas, el error era que como las tablas estan relacionadas (productos con sectores) entonces estaba infringiendo una regla de validacion, pero ya lo solucione.

Gracias a los que prestaron atencion a esto.
__________________
El aprendiz.
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 03:30.