Foros del Web » Programando para Internet » PHP »

Guarda 0 en un int

Estas en el tema de Guarda 0 en un int en el foro de PHP en Foros del Web. Hola a todos!!! Estoy haciendo un insert en un formulario hecho en dreamweaver sobre una base de datos mysql. En el mismo formulario hago el ...
  #1 (permalink)  
Antiguo 03/10/2007, 06:02
Avatar de Phoenix23  
Fecha de Ingreso: agosto-2007
Ubicación: 43.286211, -2.171349
Mensajes: 253
Antigüedad: 16 años, 7 meses
Puntos: 1
Guarda 0 en un int

Hola a todos!!!

Estoy haciendo un insert en un formulario hecho en dreamweaver sobre una base de datos mysql. En el mismo formulario hago el insert sobre mas de una tabla y le paso la clave primaria de la tabla principal a al otra, pero me guarda 0.

Aqui os dejo el codigo:

Código PHP:
$IdGi $_POST['IdGizarteratzea'];
     
 if (
$_POST["IdAkzioak"] <> 1) {    
  
$insertSQL sprintf("INSERT INTO gizaribilbidea (IdIbilbidea, IdAkzioak, IdGizarKontratuMotak, IdSektorea, IdGizarPrestaMota, IdGizarEspezialitatea, IrteeraData, IdGizarteratzea) VALUES (%s, %s, %s, %s, %s, %s, %s, '$IdGi')",
                       
GetSQLValueString($_POST['IdIbilbidea'], "int"),
                       
GetSQLValueString($_POST['IdAkzioak'], "int"),
                       
GetSQLValueString($_POST['IdGizarKontratuMotak'], "int"),
                       
GetSQLValueString($_POST['IdSektorea'], "int"),
                       
GetSQLValueString($_POST['IdGizarPrestaMota'], "int"),
                       
GetSQLValueString($_POST['IdGizarEspezialitatea'], "int"),
                       
GetSQLValueString($_POST['IrteeraData'], "date"),
                       
GetSQLValueString('$IdGi'"int"));

  
mysql_select_db($database_Datuak3$Datuak3);
  
$Result1 mysql_query($insertSQL$Datuak3) or die(mysql_error());
 } 
Gracias de antemano y saludos.
  #2 (permalink)  
Antiguo 03/10/2007, 06:39
Avatar de Kelpie  
Fecha de Ingreso: febrero-2002
Ubicación: NorthSpain
Mensajes: 609
Antigüedad: 22 años, 2 meses
Puntos: 8
Re: Guarda 0 en un int

No digo que sea el orígen del error, pero estás insertando enteros tratados como cadena, ¿es normal?

Me explico, todos los parámetros del sprintf están cualificados como cadena (%s) pero está recuperando valores enteros (int) y una fecha (date)... Supongo que GetSQLValueString devolverá cadenas, pero ¿devuelve la cadena correcta para todos los valores?

También tienes placeholder para 7 parámetros (hay 7 $s) y le pasas 8 valores (hay 8 GetSqlValueString), y esto si puede causar el problema...
__________________
Kelpie
  #3 (permalink)  
Antiguo 03/10/2007, 06:47
Avatar de Phoenix23  
Fecha de Ingreso: agosto-2007
Ubicación: 43.286211, -2.171349
Mensajes: 253
Antigüedad: 16 años, 7 meses
Puntos: 1
Re: Guarda 0 en un int

Hola,

Lo de GetSQLValueString me crea dreamweaver mismo, y me guarda bien los date y los int.

Lo de los %s tengo 7 pero luego tengo el '$IdGi' que es la variable. donde deberia de insertar el valor de la anterior tabla. Por ejemplo con el DNI del mismo modo me guarda bien.

Como lo tengo ahora me guarad todo bien y no me da ningun error solo que el int me guarda 0.

Nose que puede ser.

Gracias y saludos!!!
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 19:29.