Foros del Web » Programando para Internet » PHP »

¿Cómo guardar varios registros con MySQL?

Estas en el tema de ¿Cómo guardar varios registros con MySQL? en el foro de PHP en Foros del Web. Deseo saber como puedo guardar varios registros (5 o 6) en una tabla. Por ejemplo, registrar 5 nuevos nombres a traves de un mismo formulario. ...
  #1 (permalink)  
Antiguo 21/10/2005, 18:09
Avatar de miglos  
Fecha de Ingreso: enero-2005
Ubicación: Perú
Mensajes: 235
Antigüedad: 12 años, 10 meses
Puntos: 1
¿Cómo guardar varios registros con MySQL?

Deseo saber como puedo guardar varios registros (5 o 6) en una tabla.
Por ejemplo, registrar 5 nuevos nombres a traves de un mismo formulario.
Nombre 1: a
Nombre 2: b
Nombre 3: c
Nombre 4: d
Actualmente, lo hago de la sgte. manera, pero solo de 1 en uno:
Código PHP:
            $conn mysql_connect(cnxHost(),cnxUsuario(),cnxPassword());
            
mysql_select_db(cnxBaseDatos());
            
$select="select max(idpub) maximo from ".$vtabla;
            
$res=mysql_db_query(cnxBaseDatos(),$select);
            
$row=mysql_fetch_array($res);
            
$vidreg=$row["maximo"];
            
$vidreg++; 
luego con
Código PHP:
$sqlstm="insert into ".$vtabla." (idpub, fecha ";
            
$sqlstm=$sqlstm.", marca, clase ";
            
$sqlstm=$sqlstm.", imagen, solicitante ";
            
$sqlstm=$sqlstm.", razonsoc, expediente ";
            
$sqlstm=$sqlstm.") values (";
            
$sqlstm=$sqlstm.$vidreg.",'".$_POST["txtfecha"]."','".$_POST["txtmarca"]."','".$_POST["txtclase"]."'";
            
$sqlstm=$sqlstm.",'".$_POST["imagen"]."'";
            
$sqlstm=$sqlstm.",'".$_POST["txtsolicitante"]."'";
            
$sqlstm=$sqlstm.",'".$_POST["txtrazonsoc"]."','".$_POST["txtexpediente"]."'";
            
$sqlstm=$sqlstm.")"
Espero me puedan ayudar.
__________________
:adios:
  #2 (permalink)  
Antiguo 22/10/2005, 03:18
 
Fecha de Ingreso: abril-2005
Mensajes: 287
Antigüedad: 12 años, 8 meses
Puntos: 0
Hola miglos!

Refiriendonos al ejemplo que pones de los nombres,si lo que quieres es ingresar esos cuatro nombres e un mismo campo o columna,lo que puedes hacer es lo siguiente:

Código PHP:
$nombre1=$_POST['a'];//Le doy a la variable este nombre,pero podría ser cualquier otro
$nombre2=$_POST['b'];
$nombre3=$_POST['c'];
$nombre4=$_POST['d'];

$conn=mysql_connect(cnxHost(),cnxUsuario(),cnxPassword());   

mysql_select_db(cnxBaseDatos(),$conn);

$sent="INSERT INTO NombreDeLaTabla  VALUES ('$nombre1'),('$nombre2'),('$nombre3'),('nombre4')";

$result=mysql_query($sent,$conn);

$close=mysql_close($conn); 
Simplemente así lo hace las veces que quieras.La custiós está en separar por paréntesis cada valor a ingresar

Espero que te haya sido de ayudo

Saludos
  #3 (permalink)  
Antiguo 22/10/2005, 10:24
Avatar de miglos  
Fecha de Ingreso: enero-2005
Ubicación: Perú
Mensajes: 235
Antigüedad: 12 años, 10 meses
Puntos: 1
Muchas gracias, ahora no puedo probarlo, pero dime, eso funciona para varios formularios? es decir, si la variable se presenta de la siguiente manera:
Código PHP:
$q1=$_POST[nombre],$_POST[nombre2],$_POST[apellido],$_POST[apellido2];
$q2=$_POST[nombre],$_POST[nombre2],$_POST[apellido],$_POST[apellido2], 
y luego
Código PHP:
$sql=($q1);($q2)
$sent="INSERT INTO NombreDeLaTabla  VALUES $sql=('$q1');('$q2')
$result=mysql_query($sent,$conn); 
gracias de entemano, espero puedas ayudarme.
__________________
:adios:
  #4 (permalink)  
Antiguo 22/10/2005, 16:43
 
Fecha de Ingreso: abril-2005
Mensajes: 287
Antigüedad: 12 años, 8 meses
Puntos: 0
Hola de nuevo

No entiendo bien a lo que te quieres referir,pero si te refieres a obtener variables de formularios distintos no lo se,pero me imagino que reibirá las de un formulario u otro,pero no de todos a la vez,ya que los formularios se envían de uno en uno.Explicate mejor y lo mejor te puedo ayudar mas

Saludos
  #5 (permalink)  
Antiguo 22/10/2005, 18:01
Avatar de miglos  
Fecha de Ingreso: enero-2005
Ubicación: Perú
Mensajes: 235
Antigüedad: 12 años, 10 meses
Puntos: 1
si quiero ingresar los campos nombre, apellido, direccion y telefono de una tabla, de varias personas a la vez, digamos en grupos de 4, todos dentro de un mismo formulario:
Código HTML:
Nombre1,Apellido1,Direccion1,Telefono1,
Nombre2,Apellido2,Direccion2,Telefono2,
Nombre3,Apellido3,Direccion3,Telefono3,
Nombre4,Apellido4,Direccion4,Telefono4
este query, lo almaceno en la variable $sqlstm:
Código PHP:
$sqlstm="insert into ".$vtabla." (idcliente, nombre, apellido";
$sqlstm=$sqlstm.", direccion, telefono";
$sqlstm=$sqlstm.") values (";
$sqlstm=$sqlstm.$vidreg.",'".$_POST["txtnombre"]."','".$_POST["txtapellido"]."','".$_POST["txtdireccion"]."'";
$sqlstm=$sqlstm.",'".$_POST["telefono"]."'";
$sqlstm=$sqlstm.")"
luego repito la operacion, agregandole un ";" e incrementando el nro de registro $vidreg++. Al probar la sentencia, "echo $sqlstm" me sale el sgte. resultado:
Código PHP:
insert into clientes (idclientenombreapellidodirecciontelefonovalues (1,'alberto','casas','Los Abetos 123','4445566'); 
insert into clientes (idclientenombreapellidodirecciontelefonovalues (2,'ramon','rodriguez','Los Alamos 456','7778899'
eso es lo que guarda la variable $sqlstm

espero haberme explicado mejor.
__________________
:adios:
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 21:13.