Foros del Web » Programando para Internet » PHP »

como insertar dos registros ala vez

Estas en el tema de como insertar dos registros ala vez en el foro de PHP en Foros del Web. buenas tardes tengo el siguiente problema necesito insertar dos registros de una sola vez pero mis formularios los eh creadod el siguiente modo yno se ...
  #1 (permalink)  
Antiguo 05/01/2010, 11:32
 
Fecha de Ingreso: diciembre-2009
Mensajes: 52
Antigüedad: 14 años, 4 meses
Puntos: 0
Información como insertar dos registros ala vez

buenas tardes tengo el siguiente problema


necesito insertar dos registros de una sola vez pero mis formularios los eh creadod el siguiente modo yno se como hacer para insertarlos ya q ambos registros tienen el mismo nombre en la caja de texto, estee s mi codigo


Código PHP:
function verconsulta_insertar_fase() {

    echo 
"<form id='enviar' name='enviar' method='post' action='correcto.php'>";

echo 
'<table width="100%" border="1" class="leftbox">
  <tr class="leftboxheading">
    <td class=ch3 bgcolor=#1F1C19><input name="btn_nuevo" type="submit"  id="btn_nuevo" value="Nuevo" /></td>
    <td class=ch3 bgcolor=#1F1C19><a class=ml3 href="index_proy.php">Salir</a></td>
  </tr>
</table>'
;

for (
$a 0$a 2$a++){
    

    echo 
"<table width='100%' border=1 >\n";
    
// mostramos los nombres de los campos
    
echo "<tr>\n";
    for (
$i 0$i $this->numcampos(); $i++){
    
    
        echo 
"<td><b><div align='right'>".$this->nombrecampo($i)."</div></b></td>\n
    <td><div align='left'>"
;
    
       
    
    echo 
"<input type='text' name='".$this-> nombrecampo($i)."' size='".$this->tamaniocampo($i)."'/> ";
    
        }
        echo 
"</div></td>";    

            
            echo 
"</tr>\n";
    }    
    
    echo 
"</table></form>";
    
    echo 
"<br><br>";
    
}    
    

como se fijan la cantidad de veces q quieroq se repita esta limitada por ese for..

estoy poniendo tos dentro de un solo fomulario quiza ese es el problema no lose

gracias
  #2 (permalink)  
Antiguo 05/01/2010, 11:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: como insertar dos registros ala vez

precisamente ese es tu problema, el utilizar los mismos name para varios <input/>, se puede hacer... pero necesitas utilizar la notación de array(), osea name="nombre_campo[ID]"

así, finalmente al procesar con PHP todo es un simple arreglo, el cual puedes iterar cómodamente...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 05/01/2010, 11:42
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 8 meses
Puntos: 105
Respuesta: como insertar dos registros ala vez

si los nombres de los inputs son diferentes, no hay problema alguno, pero si son iguales la solucion seria que crees arreglos....

lo que debes hacer es cambiar:
Código PHP:
Ver original
  1. name='".$this-> nombrecampo($i)."'
por:
Código PHP:
Ver original
  1. name='".$this-> nombrecampo($i)."[]'


lo de insert multiple........
Código MySQL:
Ver original
  1. insert into tabla (campo1, campo2, campoN) values
  2. (valor1, valor2, valor3),
  3. (valor1, valor2, valor3),
  4. (valor1, valor2, valor3);

Suerte.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #4 (permalink)  
Antiguo 05/01/2010, 11:42
 
Fecha de Ingreso: diciembre-2009
Mensajes: 52
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: como insertar dos registros ala vez

y tu creesq me puedes decir como esq se hace eso por favor , simepre eh tendio problema con los array

gracias
  #5 (permalink)  
Antiguo 05/01/2010, 11:45
Avatar de TKZeXe  
Fecha de Ingreso: diciembre-2009
Ubicación: Flowers
Mensajes: 166
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: como insertar dos registros ala vez

Hora de aprender entonces,

http://php.net/manual/en/language.types.array.php

aprende varios dias esto y juega ,juega y juega con los array,
son muy usados, no esperes que te hagamos el trabajo siempre que de arrays se trate ;).


saluds
  #6 (permalink)  
Antiguo 05/01/2010, 11:47
 
Fecha de Ingreso: diciembre-2009
Mensajes: 52
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: como insertar dos registros ala vez

tranquilo solo era un favor sino puedes dilo y gracias por el link
  #7 (permalink)  
Antiguo 05/01/2010, 12:07
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: como insertar dos registros ala vez

Cita:
Iniciado por adrianayes Ver Mensaje
tranquilo solo era un favor sino puedes dilo y gracias por el link
no lo tomes a mal, pero... no hay mejor explicación que la referencia oficial de PHP

el foro mas que nada se utiliza para resolver dudas puntuales, no para dar clases.... eso, bien puedes hacerlo a tu manera... pero eso si, siempre leyendo e investigando

por ejemplo, hay bastante información al respecto en el foro, así como en el manual de PHP.... no entiendo tu indiferencia...


el siguiente tema, trata de eliminar varios registros usando la notación de array() en los name, es tal y como necesitas.... bueno, no para borrar... pero el concepto es idéntico!!

http://www.forosdelweb.com/f18/elimi...ck-box-766590/
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 05/01/2010, 12:09
Avatar de TKZeXe  
Fecha de Ingreso: diciembre-2009
Ubicación: Flowers
Mensajes: 166
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: como insertar dos registros ala vez

No le tengas miedo a leer bon ami.


dews.
  #9 (permalink)  
Antiguo 05/01/2010, 12:12
 
Fecha de Ingreso: enero-2010
Mensajes: 127
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: como insertar dos registros ala vez

Me equivoque en el de arriba es este el bueno:

function verconsulta_insertar_fase() {

echo "<form id='enviar' name='enviar' method='post' action='correcto.php'>";

echo '<table width="100%" border="1" class="leftbox">
<tr class="leftboxheading">
<td class=ch3 bgcolor=#1F1C19><input name="btn_nuevo" type="submit" id="btn_nuevo" value="Nuevo" /></td>
<td class=ch3 bgcolor=#1F1C19><a class=ml3 href="index_proy.php">Salir</a></td>
</tr>
</table>';

for ($a = 0; $a < 2; $a++){


echo "<table width='100%' border=1 >\n";
// mostramos los nombres de los campos
echo "<tr>\n";
for ($i = 0; $i < $this->numcampos(); $i++){


echo "<td><b><div align='right'>".$this->nombrecampo($i).[$i]"</div></b></td>\n
<td><div align='left'>";



echo "<input type='text' name='".$this-> nombrecampo($i).[$i]"' size='".$this->tamaniocampo($i)."'/> ";

}
echo "</div></td>";


echo "</tr>\n";
}

echo "</table></form>";

echo "<br><br>";

}

}
  #10 (permalink)  
Antiguo 05/01/2010, 12:20
 
Fecha de Ingreso: diciembre-2009
Mensajes: 52
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: como insertar dos registros ala vez

no es indiferencia y al contrario gracias por la ayuda; cuando tenga completo el codigo de insercion y tenga un error les pregunto
  #11 (permalink)  
Antiguo 05/01/2010, 12:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: como insertar dos registros ala vez

jgames88, de hecho tu código sigue estando mal...

Código PHP:
// MAL
echo "<input type='text' name='".$this-> nombrecampo($i).[$i]"' size='".$this->tamaniocampo($i)."'/> ";


// BIEN
echo "<input type='text' name='".$this-> nombrecampo($i)."[".$i."]' size='".$this->tamaniocampo($i)."'/> "
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #12 (permalink)  
Antiguo 05/01/2010, 21:15
 
Fecha de Ingreso: enero-2010
Mensajes: 127
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: como insertar dos registros ala vez

yo c arriba lo puse ta malo

Etiquetas: dos, registros
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 04:12.