elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  AYUDA! Problema (Error 1452)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: AYUDA! Problema (Error 1452)  (Leído 1,935 veces)
Geg1

Desconectado Desconectado

Mensajes: 31



Ver Perfil
AYUDA! Problema (Error 1452)
« en: 15 Marzo 2018, 20:53 »

Hola a todos, tengo el siguiente problema al rellenar un formulario PHP que se conecta a una BD MYSQL:

El formulario:



el error que da:



Como relacione las tablas:



tabla "Productos":



tabla "Pedidos":




Por favor, he estado investigando y no encontre la solucion! Desde ya Gracias...


En línea

srWhiteSkull


Desconectado Desconectado

Mensajes: 437



Ver Perfil WWW
Re: AYUDA! Problema (Error 1452)
« Respuesta #1 en: 15 Marzo 2018, 21:31 »

Mira el valor de producto_id, depura mete un echo $_POST["producto_id"] o lo que sea para ver que valor le estás pasando. El error te indica que hay un problema con la clave extranjera producto_id de Pedidos. Asegúrate si estás creando o modificando un registro en Pedidos que la clave producto_id tiene o se le pasa un valor numérico entero (y existe como id en la tabla Producto)


« Última modificación: 15 Marzo 2018, 21:33 por srWhiteSkull » En línea

Geg1

Desconectado Desconectado

Mensajes: 31



Ver Perfil
Re: AYUDA! Problema (Error 1452)
« Respuesta #2 en: 15 Marzo 2018, 21:39 »

Mira el valor de producto_id, depura mete un echo $_POST["producto_id"] o lo que sea para ver que valor le estás pasando. El error te indica que hay un problema con la clave extranjera producto_id de Pedidos. Asegúrate si estás creando o modificando un registro en Pedidos que la clave producto_id tiene o se le pasa un valor numérico entero (y existe como id en la tabla Producto)


Disculpa, soy muy nuevo en esto de PHP y MYSQL. Lo que hice fue insertar por defectos dos registros en la tabla "productos" los cuales mediante la relacion producto_id --> id_producto los conecto con la tabla pedidos..

Cual seria el error ahi? no logro captarlo
En línea

srWhiteSkull


Desconectado Desconectado

Mensajes: 437



Ver Perfil WWW
Re: AYUDA! Problema (Error 1452)
« Respuesta #3 en: 15 Marzo 2018, 22:01 »

Haz la misma operación desde la consola de MySQL con pura sentencias SQL. Pienso que el problema no lo estás teniendo en PHP sino en las propias sentencias o en los valores que defines para las claves.
En línea

Geg1

Desconectado Desconectado

Mensajes: 31



Ver Perfil
Re: AYUDA! Problema (Error 1452)
« Respuesta #4 en: 15 Marzo 2018, 22:39 »

Haz la misma operación desde la consola de MySQL con pura sentencias SQL. Pienso que el problema no lo estás teniendo en PHP sino en las propias sentencias o en los valores que defines para las claves.


en Mysql puedo insentar un registro de pedidos sin problema, ese error solo se da en el menu de php :(
En línea

srWhiteSkull


Desconectado Desconectado

Mensajes: 437



Ver Perfil WWW
Re: AYUDA! Problema (Error 1452)
« Respuesta #5 en: 15 Marzo 2018, 23:31 »

Bueno, pues ahora comprueba la sentencia SQL que le estás pasando a la función(mysqli_query o lo que sea). En vez de pasar la sentencia a la función haz un echo $sentencia o como hayas llamado a la variable de la sentencia para ver que le estás enviando al servidor MySQL y luego copiala al portapapeles y pegala en la consola de MySQL. Todo este proceso se llama depurar.
En línea

Geg1

Desconectado Desconectado

Mensajes: 31



Ver Perfil
Re: AYUDA! Problema (Error 1452)
« Respuesta #6 en: 16 Marzo 2018, 14:10 »

Bueno, pues ahora comprueba la sentencia SQL que le estás pasando a la función(mysqli_query o lo que sea). En vez de pasar la sentencia a la función haz un echo $sentencia o como hayas llamado a la variable de la sentencia para ver que le estás enviando al servidor MySQL y luego copiala al portapapeles y pegala en la consola de MySQL. Todo este proceso se llama depurar.

hice esto:



y ne sale lo siguiente:

Citar
La sentencia que me da problemas es : INSERT INTO pedidos (id_pedido, cliente_id, producto_id, fecha) VALUES (12, 0, 0, '2018-03-27')

Veo que en el apartado Clientes y Producto, no me toma los valores que elijo y los deja en 0...

y lo que yo deduzco es que ese error ocurre porque al asignarle un 0 al cliente_id como no existe esa variable en id_cliente que es la llave primaria ocurre esto, puede ser?
« Última modificación: 16 Marzo 2018, 14:14 por Geg1 » En línea

Geg1

Desconectado Desconectado

Mensajes: 31



Ver Perfil
Re: AYUDA! Problema (Error 1452)
« Respuesta #7 en: 16 Marzo 2018, 14:53 »

Ya lo resolvi!! El error estaba aqui:

Código:
<select name="producto_id" size="1">
        <option value="" >Seleccionar</option>
        <?php
do { 
?>
       [b] <option value="<?php echo $row_Productos['id_producto']?>"><?php echo $row_Productos['producto']?></option>
       [/b]


en donde esta ['producto'] estaba id_producto cuando uno es entero y el otro texto, entonces nunca iba a encontrar un entero en un texto jaja... se que no deberia usar el dreamweaver pero me gusta experimentar y creo que de estas cosas aprendo.. gracias por tu ayuda srWhiteSkull, gracias a ese comentario que me hiciste hacer en el codigo me abriste la cabeza y entendi el problema!!
En línea

srWhiteSkull


Desconectado Desconectado

Mensajes: 437



Ver Perfil WWW
Re: AYUDA! Problema (Error 1452)
« Respuesta #8 en: 16 Marzo 2018, 19:37 »

 ;-)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines