Foros del Web » Programando para Internet » PHP »

me inserta registros en todas las tablas

Estas en el tema de me inserta registros en todas las tablas en el foro de PHP en Foros del Web. tengo 12 tablas y 12 formularios, quiero que cada formulario me inserte un registro en una tabla pero cuando le doy al boton me inserta ...
  #1 (permalink)  
Antiguo 01/04/2006, 16:58
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
me inserta registros en todas las tablas

tengo 12 tablas y 12 formularios, quiero que cada formulario me inserte un registro en una tabla pero cuando le doy al boton me inserta registros vacios en todas las tablas.
como puedo arreglar esto?

tengo dos paginas la primera es la que contiene el formulario y la segunda es la que hace la accion de insertar.

Código PHP:
$result_inset=mysql_query(
"insert into enero(descen,impen) values ('$descenero','$impenero')",
$conexion);
$result_inset2=mysql_query(
"insert into febrero(descfb,impfb) values ('$descfebrero','$impfebrero')",
$conexion);
$result_inset3=mysql_query(
"insert into marzo(descmz,impmz) values ('$descmarzo','$impmarzo')",
$conexion);
$result_inset4=mysql_query(
"insert into abril(descab,impab) values ('$descabril','$impabril')",
$conexion);
$result_inset5=mysql_query(
"insert into mayo(descmy,impmy) values ('$descmayo','$impmayo')",
$conexion);
$result_inset6=mysql_query(
"insert into junio(descjn,impjn) values ('$descjunio','$impjunio')",
$conexion);
$result_inset7=mysql_query(
"insert into julio(descjl,impjl) values ('$descjulio','$impjulio')",
$conexion);
$result_inset8=mysql_query(
"insert into agosto(descag,impag) values ('$descagosto','$impagosto')",
$conexion);
$result_inset9=mysql_query(
"insert into septiembre(descsp,impsp) values ('$descseptiembre','$impseptiembre')",
$conexion);
$result_inset10=mysql_query(
"insert into octubre(descoc,impoc) values ('$descoctubre','$impoctubre')",
$conexion);
$result_inset11=mysql_query(
"insert into noviembre(descnv,impnv) values ('$descnoviembre','$impnoviembre')",
$conexion);
$result_inset12=mysql_query(
"insert into diciembre(descdc,impdc) values ('$descdiciembre','$impdiciembre')",
$conexion);
?> 
  #2 (permalink)  
Antiguo 01/04/2006, 16:59
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
esto no lo he puesto yo se ha escrito solo

BEGIN__VBULLETIN__CODE__SNIPPET
  #3 (permalink)  
Antiguo 01/04/2006, 17:06
 
Fecha de Ingreso: abril-2005
Mensajes: 287
Antigüedad: 12 años, 8 meses
Puntos: 0
¿Cómo tienes organizados los formularios??¿Los tienes todos en una misma página??¿Los diriges todos a la misma página??
  #4 (permalink)  
Antiguo 01/04/2006, 17:33
Avatar de atak  
Fecha de Ingreso: julio-2005
Ubicación: Huancayo
Mensajes: 490
Antigüedad: 12 años, 4 meses
Puntos: 5
De acuerdo insertando

Hola gingerk

Deberías hacerle un ECHO a tus variables en el archivo php; para que verifiques q tus variables esten llegando con algun valor en caso contario deberás usar $_POST o $_GET

Código PHP:
<?PHP

echo $descenero." - ".$impenero;
 
?>
Pruebalo y nos cuentas

Salu2

__________________
. .: El mejor Inicio :. .
  #5 (permalink)  
Antiguo 01/04/2006, 17:41
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
Cita:
¿Cómo tienes organizados los formularios??¿Los tienes todos en una misma página??¿Los diriges todos a la misma página??
si, en una pagina tengo 12 formularios y esos formularios tienen el action a la misma pagina.

en mi base de datos tengo 12 tablas, enero febrero, marzo....
y en mi pagina principal muestro los registros de esas tablas y doy la opcion de insertar o borrar(la de borrar todavia no la he empezado) registros.

entonces he creado 12 dormularios y las mando a una pagina donde les da la accion
insert into enero bla bla bla
" febrero bla bla bla
etc.

el fallo esta que cuando apreto un boton me inserta un registro vacio en todas las tablas y el registro lleno de la tabla en la que lo he rellenado.

se entiende?
  #6 (permalink)  
Antiguo 01/04/2006, 17:41
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
atak no me he enterao de lo que dices :P
  #7 (permalink)  
Antiguo 02/04/2006, 04:50
 
Fecha de Ingreso: abril-2005
Mensajes: 287
Antigüedad: 12 años, 8 meses
Puntos: 0
Si tienes todos los formularios en una misma página,es posible que cada vez que le des al botón de envío de uno de ellos,como en la página de procesamiento tienes un INSERT de todos,te insertará filas en blanco en todos aquellos de los que no recibas nada del form.Aún así,como te ha dicho atak,intenteta hacer un echo de las variables que recibes del formulario,para comprobar que realmente las recibes antes de intentar insertarlas en la DB.

Espero te aclares
  #8 (permalink)  
Antiguo 02/04/2006, 10:23
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
he hecho lo que me dices y he colocado esto

echo $descmayo." - ".$impmayo;

me salen 12 rayitas mas lo que escribo

- WW - WW - - - - - - - - - -

luego he escrito esto y me sale lo mismo

echo $_POST["descenero"]." - ".$_POST["impenero"];

- WW - WW - - - - - - - - - -
  #9 (permalink)  
Antiguo 02/04/2006, 10:30
 
Fecha de Ingreso: abril-2005
Mensajes: 287
Antigüedad: 12 años, 8 meses
Puntos: 0
Evidentemente algo falla.Si no te importa postea los formularios y la página donde recibes las variables para ver donde puede estar el fallo.
  #10 (permalink)  
Antiguo 02/04/2006, 12:11
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
gastos.php
Código PHP:
<table width="100%"  border="0" cellspacing="0" cellpadding="0">
        <
tr align="left" valign="top">
          <
td><form name="form3" method="post" action="gastos2.php">
            <
table width="100%"  border="0" cellspacing="0" cellpadding="0">
              <
tr bgcolor="#E0DFE3">
                <
td colspan="2" align="left" valign="top"><div align="left" class="Estilo6">Enero</div></td>
                </
tr>
              <
tr>
                <
td class="Estilo5"><div align="left" class="Estilo6">desc.</div></td>
                <
td bgcolor="#FFFF00" class="Estilo6"><div align="left">imp.</div></td>
              </
tr>
              <
tr>
                <
td><div align="left">
                  <
input name="descenero" type="text" id="descenero" size="8">
                </
div></td>
                <
td><div align="left">
                  <
input name="impenero" type="text" id="impenero" size="8">
</
div></td>
              </
tr>
              <
tr>
                <
td colspan="2"><div align="center">
                  <
input name="b1" type="submit" id="b1" value="Insertar">
</
div>                  <div align="center">
                  </
div></td>
                </
tr>
            </
table>
          </
form></td>
          <
td><form name="form4" method="post" action="gastos2.php">
            <
table width="100%"  border="0" cellspacing="0" cellpadding="0">
              <
tr bgcolor="#E0DFE3">
                <
td colspan="2" align="left" valign="top"><div align="left" class="Estilo6">Febrero</div></td>
              </
tr>
              <
tr>
                <
td><div align="left" class="Estilo6">desc.</div></td>
                <
td bgcolor="#FFFF00"><div align="left" class="Estilo6">imp.</div></td>
              </
tr>
              <
tr>
                <
td><div align="left">
                  <
input name="descfebrero" type="text" size="8">
                </
div></td>
                <
td><div align="left">
                  <
input name="impfebrero" type="text" size="8">
                </
div></td>
              </
tr>
              <
tr>
                <
td colspan="2"><div align="center">
                  <
input name="b2" type="submit" id="b2" value="Insertar">
                </
div></td>
                </
tr>
            </
table>
          </
form></td>
          <
td><form name="form5" method="post" action="gastos2.php">
            <
table width="100%"  border="0" cellspacing="0" cellpadding="0">
              <
tr bgcolor="#E0DFE3">
                <
td colspan="2" align="left" valign="top"><div align="left" class="Estilo6">Marzo</div></td>
              </
tr>
              <
tr>
                <
td><div align="left" class="Estilo6">desc.</div></td>
                <
td bgcolor="#FFFF00"><div align="left">i<span class="Estilo6">mp.</span></div></td>
              </
tr>
              <
tr>
                <
td><div align="left">
                  <
input name="descmarzo" type="text" size="8">
                </
div></td>
                <
td><div align="left">
                  <
input name="impmarzo" type="text" size="8">
                </
div></td>
              </
tr>
              <
tr>
                <
td colspan="2"><div align="center">
                  <
input name="b3" type="submit" id="b3" value="Insertar">
                </
div></td>
                </
tr>
            </
table>
          </
form></td>
          <
td><form name="form6" method="post" action="gastos2.php">
            <
table width="100%"  border="0" cellspacing="0" cellpadding="0">
              <
tr bgcolor="#E0DFE3">
                <
td colspan="2" align="left" valign="top" class="Estilo6"><div align="left">Abril</div></td>
              </
tr>
              <
tr>
                <
td><div align="left" class="Estilo6">desc.</div></td>
                <
td bgcolor="#FFFF00"><div align="left" class="Estilo6">imp.</div></td>
              </
tr>
              <
tr>
                <
td><div align="left">
                  <
input name="descabril" type="text" size="8">
                </
div></td>
                <
td><div align="left">
                  <
input name="impabril" type="text" size="8">
                </
div></td>
              </
tr>
              <
tr>
                <
td colspan="2"><div align="center">
                  <
input name="b4" type="submit" id="b4" value="Insertar">
                </
div></td>
                </
tr>
            </
table>
          </
form></td>
          <
td><form name="form7" method="post" action="gastos2.php">
            <
div align="left">
              <
table width="100%"  border="0" cellspacing="0" cellpadding="0">
                  <
tr bgcolor="#E0DFE3">
                    <
td colspan="2" align="left" valign="top"><div align="left" class="Estilo6">Mayo</div></td>
                  </
tr>
                  <
tr>
                    <
td><div align="left" class="Estilo6">des.</div></td>
                    <
td bgcolor="#FFFF00"><div align="left" class="Estilo6">imp.</div></td>
                  </
tr>
                  <
tr>
                    <
td><div align="left">
                      <
input name="descmayo" type="text" size="8">
                    </
div></td>
                    <
td><div align="left">
                      <
input name="impmayo" type="text" size="8">
                    </
div></td>
                  </
tr>
                  <
tr>
                    <
td colspan="2"><div align="center">
                      <
input name="b5" type="submit" id="b5" value="Insertar">
                    </
div></td>
                    </
tr>
                          </
table>
            </
div>
          </
form></td>
          <
td><form name="form8" method="post" action="gastos2.php">
            <
table width="100%"  border="0" cellspacing="0" cellpadding="0">
              <
tr bgcolor="#E0DFE3">
                <
td colspan="2" align="left" valign="top"><div align="left" class="Estilo6">Junio</div></td>
              </
tr>
              <
tr>
                <
td><div align="left" class="Estilo6">desc.</div></td>
                <
td bgcolor="#FFFF00"><div align="left" class="Estilo6">imp.</div></td>
              </
tr>
              <
tr>
                <
td><div align="left">
                  <
input name="descjunio" type="text" size="8">
                </
div></td>
                <
td><div align="left">
                  <
input name="impjunio" type="text" size="8">
                </
div></td>
              </
tr>
              <
tr>
                <
td colspan="2"><div align="center">
                  <
input name="b6" type="submit" id="b6" value="Insertar">
                </
div></td>
                </
tr>
            </
table>
          </
form></td>
          <
td><form name="form9" method="post" action="gastos2.php">
            <
table width="100%"  border="0" cellspacing="0" cellpadding="0">
              <
tr bgcolor="#E0DFE3">
                <
td colspan="2" align="left" valign="top"><div align="left" class="Estilo6">Julio</div></td>
              </
tr>
              <
tr>
                <
td><div align="left" class="Estilo6">desc.</div></td>
                <
td bgcolor="#FFFF00"><div align="left" class="Estilo6">imp.</div></td>
              </
tr>
              <
tr>
                <
td><div align="left">
                  <
input name="descjulio" type="text" size="8">
                </
div></td>
                <
td><div align="left">
                  <
input name="impjulio" type="text" size="8">
                </
div></td>
              </
tr>
              <
tr>
                <
td colspan="2"><div align="center">
                  <
input name="b7" type="submit" id="b7" value="Insertar">
                </
div></td>
                </
tr>
            </
table>
          </
form></td>
          <
td><form name="form10" method="post" action="gastos2.php">
            
etc etc etc que no me deja poner mas texto 
  #11 (permalink)  
Antiguo 02/04/2006, 12:12
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
gastos2.php
Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body {
    background-color: #666666;
}
.Estilo1 {
    font-family: Geneva, Arial, Helvetica, sans-serif;
    font-size: 14px;
}
-->
</style>
</head>
<body>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<form name="form1" method="post" action="gastos.php">
  <table width="50%"  border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
      <td bgcolor="#E7DED1"><div align="center">
        <input type="hidden" name="user" value="....">
        <input type="hidden" name="pass" value=".....">
        <br>
      </div>
        <div align="center" class="Estilo1">Registro insertado <br>
          <input name="Volver" type="submit" id="Volver" value="Volver">
        </div></td>
    </tr>
  </table>
</form>

<p>&nbsp;</p>
<p>&nbsp;</p>
<p align="center" class="Estilo1">&nbsp;</p>
</body>
</html>
<?php
echo $_POST["descenero"]." - ".$_POST["impenero"]; 
echo 
$_POST["descfebrero"]. " - ".$_POST["impfebrero"];
echo 
$_POST["descmarzo"]." - ".$_POST["impmarzo"];
echo 
$_POST["descabril"]." - ".$_POST["impabril"];
echo 
$_POST["descmayo"]." - ".$_POST["impmayo"];
echo 
$_POST["descjunio"]." - ".$_POST["impjunio"];
echo 
$_POST["descjulio"]." - ".$POST["impjilio"];
echo 
$_POST["descagosto"]." - ".$_POST["impagosto"];
echo 
$_POST["descseptiembre"]." - ".$_POST["impseptiembre"];
echo 
$_POST["descoctubre"]." - ".$_POST["impoctubre"];
echo 
$_POST["descnoviembre"]." - ".$_POST["impnoviembre"];
echo 
$_POST["descdiciembre"]." - ".$_POST["impdiciembre"];
?>
  #12 (permalink)  
Antiguo 02/04/2006, 15:51
 
Fecha de Ingreso: abril-2005
Mensajes: 287
Antigüedad: 12 años, 8 meses
Puntos: 0
Pues.....el código a simple vista parece estar bien.Yo creo que el problema está es que cada vez que le das a enviar un formulario,dices que inserte en todas las tablas(como pusiste el primer post),y tú nada mas que insertes datos en la tabla en cuestión ,según el formulario que envías.Intenta modificar eso pues

Saludos y suerte
  #13 (permalink)  
Antiguo 02/04/2006, 16:26
Avatar de atak  
Fecha de Ingreso: julio-2005
Ubicación: Huancayo
Mensajes: 490
Antigüedad: 12 años, 4 meses
Puntos: 5
De acuerdo Funciona bien

Hola gingerk

Tu Script me funciona bien ( respecto a los - --- -- ) son los que imprime de acuerdo a la cantidad de echos que le diste pero eso no tiene nada que ver.

Pruebalo reemplazando por <br> Saltos de linea
Código PHP:
<?php
echo $_POST["descenero"]." <br> ".$_POST["impenero"]; 
echo 
$_POST["descfebrero"]. " <br> ".$_POST["impfebrero"];
echo 
$_POST["descmarzo"]." <br> ".$_POST["impmarzo"];
echo 
$_POST["descabril"]." <br> ".$_POST["impabril"];
echo 
$_POST["descmayo"]." <br>".$_POST["impmayo"];
echo 
$_POST["descjunio"]." <br> ".$_POST["impjunio"];
echo 
$_POST["descjulio"]." <br>".$POST["impjilio"];
echo 
$_POST["descagosto"]."<br> ".$_POST["impagosto"];
echo 
$_POST["descseptiembre"]." <br> ".$_POST["impseptiembre"];
echo 
$_POST["descoctubre"]."<br>".$_POST["impoctubre"];
echo 
$_POST["descnoviembre"]."<br>".$_POST["impnoviembre"];
echo 
$_POST["descdiciembre"]."<br>".$_POST["impdiciembre"];
?>

tambien revisa este enlace:

LInk


Salu2

__________________
. .: El mejor Inicio :. .
  #14 (permalink)  
Antiguo 02/04/2006, 17:07
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
pero a ver, que solucion me dais para que no me insete registros en todas las tablas? como lo hariais vosotros?
  #15 (permalink)  
Antiguo 02/04/2006, 18:20
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
Solucionado,
Código PHP:
if($_POST[b1]){
      
mysql_query("insert into enero(descen,impen) values ('$descenero','$impenero')",
    
$conexion); 
b1 es el nombre del boton
gracias por todo chicos.
saludos.
  #16 (permalink)  
Antiguo 02/04/2006, 18:20
 
Fecha de Ingreso: enero-2006
Mensajes: 140
Antigüedad: 11 años, 11 meses
Puntos: 0
por que me sale todo el rato el dichoso
BEGIN__VBULLETIN__CODE__SNIPPET
  #17 (permalink)  
Antiguo 02/04/2006, 21:29
 
Fecha de Ingreso: junio-2005
Mensajes: 981
Antigüedad: 12 años, 6 meses
Puntos: 2
Cita:
Iniciado por gingerk
por que me sale todo el rato el dichoso
BEGIN__VBULLETIN__CODE__SNIPPET
Es un error del foro que según lo que habia escuchado (ya hace tiempo) que en breve se solucionara.
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 08:35.