Ver Mensaje Individual
  #9 (permalink)  
Antiguo 18/07/2015, 19:35
r1krdo_7
 
Fecha de Ingreso: julio-2015
Mensajes: 8
Antigüedad: 9 años, 3 meses
Puntos: 0
Respuesta: problema relacion de tablas y envio de datos

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Primero: No repitas información entre posts. Es redundante, y toda redundancia termina generando ruido en el entendimiento. Y todo ruido en la información hace que uno ignore el mensaje.

En segundo lugar, y yendo al problema, son dos INSERT, uno detrás de otro. ¿CUál es exactamente el problema?
¿No sabes hacer más de un insert por script?
¿No sabes cómo recuperar el ID generado?

Lo primero, son dos INSERT. No debería representar un desafío hacer dos, si ya estás haciendo al menos uno exitoso.

Lo segundo se aclara yendo al manual de referencia: [URL="http://php.net/manual/es/function.mysql-query.php"]mysql_query()[/URL]

Donde encontrarías esta función: [URL="http://php.net/manual/es/function.mysql-insert-id.php"]mysql_insert_id()[/URL]

donde encontrarías este ejemplo:
Código PHP:
Ver original
  1. <?php
  2. $enlace = mysql_connect('localhost', 'usuario_mysql', 'contraseña_mysql');
  3. if (!$enlace) {
  4.     die('No se pudo conectar: ' . mysql_error());
  5. }
  6.  
  7. mysql_query("INSERT INTO mitabla (producto) values ('kossu')");
  8. printf("El último registro insertado tiene el id %d\n", mysql_insert_id());
  9. ?>
La única diferencia sería que en ligar de imprimirlo para verlo, lo usas para el otro INSERT...


Posdata: ¿Qé se supone que representa esta línea, que veo en tu script, justo debajo del primer INSERT?:
Código PHP:
Ver original
  1. $a.$c="";

Para mí es algo misterioso...
modifique el codigo y no tengo problema estoy insertando en la segunda tabla el valor stock pero no envia a la tabla 1 el id solo manda el valor 0.

<HTML>
<HEAD>
<TITLE>New Document</TITLE>
</HEAD>
<BODY>

<?php
$nombrep=$_GET['nombrep'];
$unidadesp=$_GET['unidadesp'];
$codigop=$_GET['codigop'];
$marca=$_GET['marca'];
$descripcion=$_GET['descripcion'];
$costo=$_GET['costo'];
$stock=$_GET['stock'];
//conexion con el servidor
$conexion=mysql_connect('localhost','root','');
//conexion con base de datos
$b=mysql_select_db('farmacia',$conexion);
//agregar la informacion
$query=mysql_query("insert into productos(nombrep,unidadesp,codigop,marca,descripc ion,costo)value('$nombrep','$unidadesp','$codigop' ,'$marca','$descripcion','$costo')", $conexion);
$query=mysql_query("insert into inventario(stock)value('$stock')",$conexion);
?>
</BODY>
</HTML>

si lo hago al reves
y cargo todos los campos de la tabla 1 incluyendo el stock no manda nada a la tabla 2 por que no se como mandar el id a la otra tabla