Foros del Web » Programando para Internet » PHP »

insertar registros a diferentes tablas desde php a mysql

Estas en el tema de insertar registros a diferentes tablas desde php a mysql en el foro de PHP en Foros del Web. Hola a Todos .... Quisiera Saber como inserta registros en diferentes tablas atravez de un único formulario , Ejemplo: Yo tengo dos tablas la primera ...
  #1 (permalink)  
Antiguo 12/05/2009, 23:22
Avatar de cerradacarlos  
Fecha de Ingreso: mayo-2009
Mensajes: 33
Antigüedad: 15 años
Puntos: 2
insertar registros a diferentes tablas desde php a mysql

Hola a Todos ....

Quisiera Saber como inserta registros en diferentes tablas atravez de un único formulario, Ejemplo: Yo tengo dos tablas la primera se llama Usuarios y tiene dos campos (IdUsuario, NombreUsuario).
Y la segunda se llama Unidades y tiene tres campos (IdUnidad, UnidadesA, UnidadesB), Entonces atravez de ese único formulario yo inserto en la primera caja de texto llamada (NombreUsuario) El Nombre del Usuario luego en la siguiente caja de texto llamada (UnidadesA) inserto un número X y por ultimo en la caja de texto llamada (UnidadesB) inserto un número Z.

De que manera podría hacer esto con php, no tengo mucha experiencia con php en realidad estoy empezando espero que me ayuden les agradecería mucho Gracias....
  #2 (permalink)  
Antiguo 13/05/2009, 01:25
 
Fecha de Ingreso: mayo-2009
Ubicación: Madrid
Mensajes: 100
Antigüedad: 15 años
Puntos: 3
Respuesta: insertar registros a diferentes tablas desde php a mysql

para insertar usuarios (ejemplo usando PHP5)
$q1= "insert into 'tu_tabla' (idUsuario,NombreUsuario) values ('".$valor1."','".$valor2."');
execute($q1) or die (mysql_error());

y la $q2 igual pero con los otros valores
$q2= "insert into 'tu_tabla2' (campo1,campo2,....) values ('".$valor3."','".$valor4."',....);
execute($q2) or die (mysql_error());


La funcion execute te la dejo aqui abajo por si no entiendes que es:

function execute($query)
{
return mysql_query($query);
}
  #3 (permalink)  
Antiguo 13/05/2009, 10:42
Avatar de cerradacarlos  
Fecha de Ingreso: mayo-2009
Mensajes: 33
Antigüedad: 15 años
Puntos: 2
Respuesta: insertar registros a diferentes tablas desde php a mysql

Hola amigo gdecaceresr hice esto pero no me guarda los registros en la base de datos:

<?
include_once("dbConex.php");
$dbConex=abrirConexion();
$NombreUsuario=$_POST["NombreUsuario"];
$UnidadesA=$_POST["UnidadesA"];
$UnidadesB=$_POST["UnidadesB"];

function execute($query)
{
$q1= "insert into Usuario (NombreUsuario) values ('$NombreUsuario')";
execute($q1) or die (mysql_error());

$q2= "insert into Unidades (UnidadesA,UnidadesB) values ('$UnidadesA','$UnidadesB')";
execute($q2) or die (mysql_error());

return mysql_query($query);
}

if(mysql_query){

header("location: procesar1.php");

}else{
echo mysql_error();

}

?>
  #4 (permalink)  
Antiguo 13/05/2009, 13:35
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 9 meses
Puntos: 70
Respuesta: insertar registros a diferentes tablas desde php a mysql

Hola cerradacarlos, cómo vamos?

Pues no te va a guardar porque no le estás pasando los parámetros que debe usar la función

No pasas como parámetros ni $nombreUsuario, ni $unidadesA, $unidadesB, entonces la función no tienes valores para insertar a la DB.

Algo así:

Código php:
Ver original
  1. function execute($query, $nombreUsuario, $unidadesA, $unidadesB)
  2. {
  3. // bla bla bla
  4. }

Saludos
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #5 (permalink)  
Antiguo 13/05/2009, 14:16
Avatar de cerradacarlos  
Fecha de Ingreso: mayo-2009
Mensajes: 33
Antigüedad: 15 años
Puntos: 2
Respuesta: insertar registros a diferentes tablas desde php a mysql

Pues hay vamos Carxl nada no me funciona debe ser algo que me falta no se de verdad voy a enseñarle lo que e hecho detalladamente. la base de datos se llama librophp.

Este es el script de Conexión que se llama dbConex.php

Código PHP:
<?

function abrirConexion ()
{
     
$dbConex mysql_connect("localhost","root","root");
      if (! 
$dbConex)
      {
          echo 
"Imposible Conectar";
          exit;          
      }
     
mysql_select_db("librophp"$dbConex);
     return 
$dbConex;
}

function 
cerrarConexion ($dbConex) {
mysql_close($dbConex);
}
      

?>
Este es el script donde esta el formulario y se llama formulario.php

Código PHP:
<form id="form1" name="form1" method="post" action="Insertar.php">
  <
table width="339" border="0" cellpadding="1" cellspacing="1">
    <
tr>
      <
td width="160" bgcolor="#CCCCCC">Nombre Usuario </td>
      <
td width="124">
        <
input name="NombreUsuario" type="text" id="NombreUsuario" size="20" />
      </
td>
    </
tr>
  </
table><br>
  
Listado de Libros Disponibles:
  <
ul>
  <
li>Libro A - (Precio 10) - Unidades:
    <
input name="UnidadesA" type="text" id="UnidadesA" size="2" />
</
li>
  
  <
li>Libro B - (Precio 12) - Unidades:
  <
input name="UnidadesB" type="text" id="UnidadesB" size="2" />
  </
li>
  </
ul>
  <
p align="center"><input name="submit" type="submit" id="submit" value="Enviar" />
  </
p>
</
form
y por ultimo el script donde intento hacer la inserción de registros a las tablas Usuario y Unidades y se llama Insertar.php

Código PHP:
<?
include_once("dbConex.php");
$dbConex=abrirConexion();
$NombreUsuario=$_POST["NombreUsuario"];
$UnidadesA=$_POST["UnidadesA"];
$UnidadesB=$_POST["UnidadesB"];


function 
execute($NombreUsuario$UnidadesA$UnidadesB)
{
$q1"INSERT INTO Usuario (NombreUsuario) values ('$NombreUsuario')";
execute($q1) or die (mysql_error());


$q2"INSERTINTO Unidades (UnidadesA,UnidadesB) values ('$UnidadesA','$UnidadesB')";
execute($q2) or die (mysql_error());

return 
mysql_query($NombreUsuario$UnidadesA$UnidadesB);
}

if(
mysql_query){

echo 
"datos Guardados";

}else{

echo 
mysql_error();
}


?>
que sera lo que tengo que hacer Carxl

Gracias por ayudarme de verdad...
  #6 (permalink)  
Antiguo 13/05/2009, 14:49
 
Fecha de Ingreso: abril-2009
Ubicación: Cuba
Mensajes: 54
Antigüedad: 15 años
Puntos: 2
Respuesta: insertar registros a diferentes tablas desde php a mysql

cerradacarlos

Estás cometiendo varios errores. Todo está muy bien hasta que llegas a la funcion execute.
Te voy a dar una sugerencia, a partir de la función execute.
Dime si te funciona:

Código PHP:

function execute($NombreUsuario$UnidadesA$UnidadesB)
{
$q1"INSERT INTO Usuario (NombreUsuario) values ('$NombreUsuario')";
$resultquery mysql_query($q1);
$errores mysql_errno();

$q2"INSERT INTO Unidades (UnidadesA, UnidadesB) values ('$UnidadesA','$UnidadesB')";
$resultquery mysql_query($q2);
$errores $errores mysql_errno();
return 
$errores;
}

$result execute($NombreUsuario$UnidadesA$UnidadesB);

if (
$result == 0) {
echo 
"Todo Ok";

else
{
echo 
"Error al insertar datos"

Saludos.

Espero que resuelvas con esto.
  #7 (permalink)  
Antiguo 13/05/2009, 23:11
Avatar de cerradacarlos  
Fecha de Ingreso: mayo-2009
Mensajes: 33
Antigüedad: 15 años
Puntos: 2
Respuesta: insertar registros a diferentes tablas desde php a mysql

Me funciono todo bien gracias Ash_AM de verdad gracias...
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 19:22.