Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

insertar en campos en tablas con foreing key

Estas en el tema de insertar en campos en tablas con foreing key en el foro de Mysql en Foros del Web. hola a todos :) primero q todo. lo siento por haber pasado a enviar dos veces el post... no se como borrar 1 bueno, tengo ...
  #1 (permalink)  
Antiguo 17/01/2011, 07:57
 
Fecha de Ingreso: julio-2006
Ubicación: Concepción
Mensajes: 66
Antigüedad: 13 años, 9 meses
Puntos: 0
insertar en campos en tablas con foreing key

hola a todos :)

primero q todo. lo siento por haber pasado a enviar dos veces el post... no se como borrar 1
bueno, tengo el siguiente problema

mis tablas:

cliente
id_cliente
nombre



registro

id_cliente_fk


Cuando intento hacer un insert en la tabla clientes, esta todo bien.

pero cuando trato de hacer el insert para id_cliente de la tabla registro
no me deja..
ambas son innodb y estan hechas las relaciones..


alguien sabe como hacer el insert?

gracias
  #2 (permalink)  
Antiguo 17/01/2011, 08:04
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 14 años, 1 mes
Puntos: 96
Respuesta: insertar en campos en tablas con foreing key

Saludos

Que error te esta mostrando mysql?
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #3 (permalink)  
Antiguo 17/01/2011, 08:30
 
Fecha de Ingreso: julio-2006
Ubicación: Concepción
Mensajes: 66
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: insertar en campos en tablas con foreing key

asi ingreso para la primera tabla cliente, y anda todo bien

$ingresadatos = "INSERT clientes VALUES ('$id_cliente_fk');";

y de la misma forma para la tabla registro:
Código PHP:
Ver original
  1. <? $conex = mysql_connect ("localhost","user","pass")
  2.  
  3.                or die ("No se pudo realizar la conexión");
  4.  
  5.  
  6. $id_cliente_fk=$HTTP_POST_VARS['id_cliente_fk'];
  7.  
  8.  
  9.     echo "Variable $id_cliente: " . $HTTP_POST_VARS["id_cliente_fk"] . "<br>n";
  10.    
  11.  
  12. mysql_select_db ("db", $conex);
  13.  
  14.     $ingresadatos = "INSERT cotizaciones VALUES ('$id_cliente_fk');";
  15.     $resultado = mysql_query ($ingresadatos, $conex);
  16.     if ($resultado){ echo "<br><b>Datos guardados exitosamente<b>";}
  17.  
  18. else {
  19.     echo "<b>Debe Completar todos los campos</b>";
  20.    
  21.     }
  22.                  
  23. ?>


pero no queda guardado....

a lo mejor el insert para las foreing key no asi.. o no?
  #4 (permalink)  
Antiguo 17/01/2011, 08:36
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 14 años, 1 mes
Puntos: 96
Respuesta: insertar en campos en tablas con foreing key

Saludos

No te entiendo bien, indicas en el post que las tablas a insertar son cliente y registro y en el codigo que posteas esta una llamada cotizaciones. mmmm

Coloca en tu codigo en esta seccion del codigo donde vallas a realizar el query la funcion mysql_error()

Código PHP:
Ver original
  1. $resultado = mysql_query ($ingresadatos, $conex)or die mysql_error();

Por otro lado $HTTP_POST_VARS ya esta mandado a recojer, para obtener variables por post debes realizarlo con $_POST y de igual manera en la inicializacion de tu código no lo manejes con <? sino <?php. Las razones están discutidas en el foro por si tienes alguna duda.
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #5 (permalink)  
Antiguo 17/01/2011, 08:40
 
Fecha de Ingreso: julio-2006
Ubicación: Concepción
Mensajes: 66
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: insertar en campos en tablas con foreing key

ahora me funciono, le estaba pasando un valor que no estaba en la condicion de la foreing key..

saludos y gracias

Etiquetas: campos, key, tablas
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:06.