Foros del Web » Programando para Internet » PHP »

Problemas con inserciones

Estas en el tema de Problemas con inserciones en el foro de PHP en Foros del Web. Bnas tengo el siguiente codigo para insertar registros en mi base de datos, precisamente en mi tabla "trans", al darle click al boton de insercion ...
  #1 (permalink)  
Antiguo 25/05/2004, 13:35
Avatar de davidrenzzo  
Fecha de Ingreso: enero-2004
Mensajes: 59
Antigüedad: 20 años, 2 meses
Puntos: 0
Pregunta Problemas con inserciones

Bnas tengo el siguiente codigo para insertar registros en mi base de datos, precisamente en mi tabla "trans", al darle click al boton de insercion me agrega campos en blanco y solo toma el ultimo valor del campo 'usuario', alguien me puede decir q esta pasando?.

****Codigo*****
<table>
<form method="POST" action="ingreso.php">

<tr valign="top">

<!--FECHA-->
<td>
<input type="text" name="DD" size="2" value="<? print date("d"); ?>">
</td>
<td>
<input type="text" name="MM" size="2" value="<? print date("m"); ?>">
</td>
<td>
<input type="text" name="AAAA" size="4" value="<? print date("Y"); ?>">
</td>

<!--MONTO-->
<td><input type="text" name="monto" size="8"></td>

<!--MONEDA-->
<td>
<select name="moneda">
<option value="Soles">Soles</option>
<option value="Dolares">Dolares</option>
</select>
</td>

<!--OPERACION-->
<td>
<select name="operacion">
<option value="Ingreso">Ingreso</option>
<option value="Egreso">Egreso</option>
</select>
</td>

<!--TIPO TRANSACCION-->
<td>
<select name="tipo_trans">
<?
include "conexion.php";
$consulta = "SELECT tipo_trans FROM tipo_trans";
$result = mysql_query($consulta);
while ($row = mysql_fetch_array($result)){
$tipo_trans = $row["tipo_trans"];
echo "<option value='$tipo_trans'>$tipo_trans</option>";
}
include "cerrarconexion.php";
?>
</select>
</td>

<!--USUARIOS-->
<td>
<select name="usuarios">
<?
$dbhost = "localhost";
$dbusuario = "dbusuario";
$dbpassword = "dbpassword";
$db1 = "db1";
$conexion1 = mysql_connect($dbhost, $dbusuario, $dbpassword);
mysql_select_db($db1, $conexion1);
$consulta = "SELECT cl_user_name FROM phpcoin_clients ORDER BY cl_user_name ASC";
$result = mysql_query($consulta);
while ($row = mysql_fetch_array($result)){
$usuarios = $row["cl_user_name"]; //variable para mostrar
echo "<option value='$usuarios'>$usuarios</option>";
}
mysql_close($db1);
?>
</select>
</td>

<!--TRANSACCION-->
<td><input type="text" name="trans" size="40"></td>

<!--NOTAS-->
<td><textarea name="notas" cols="20"></textarea></td>

</form>
</tr>
<tr valign="top">

<!--INSERCION DE TRANSACCIONES-->
<td colspan="5" align="left">
<form method="post" action="ingreso.php">
<input type="submit" name="ingresar" value="Ingresar Transaccion">
</form>
</td>

<!--MOSTRAR TRANSACCIONES-->
<td colspan="5" align="left">
<form method="post" action="barrido.php">
<input type="submit" name="barrido" value="Mostrar Transacciones">
</form>
</td>
</tr>
</table>
<?
if ($ingresar){
include "conexion.php";
$fecha = $AAAA. -$MM. -$DD;
$consulta = "INSERT INTO trans (fecha, monto, moneda, operacion, tipo_trans, trans, usuario, notas, id)
VALUES ('$fecha', '$monto', '$moneda', '$operacion', '$tipo_trans', '$trans', '$usuarios', '$notas', '$id')";
$result = mysql_query($consulta);
include "cerrarconexion.php";
}
?>
__________________
www.gradamedia.com

Última edición por davidrenzzo; 25/05/2004 a las 14:32
  #2 (permalink)  
Antiguo 25/05/2004, 13:45
 
Fecha de Ingreso: octubre-2003
Mensajes: 46
Antigüedad: 20 años, 6 meses
Puntos: 0
Hee

No falta recepcionar las variables del form con $_POST['variable'], o sea hacer un:

$monto=$_POST['monto'];

para cada una de las varibles...
  #3 (permalink)  
Antiguo 25/05/2004, 14:10
Avatar de davidrenzzo  
Fecha de Ingreso: enero-2004
Mensajes: 59
Antigüedad: 20 años, 2 meses
Puntos: 0
Gracias darkoi pero al parecer tu aporte no funciona en mi codigo. DE todas maneras gracias igual.
__________________
www.gradamedia.com
  #4 (permalink)  
Antiguo 25/05/2004, 15:31
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
David mira

<!--INSERCION DE TRANSACCIONES-->
<td colspan="5" align="left">
<form method="post" action="ingreso.php">
<input type="submit" name="ingresar" value="Ingresar Transaccion">
</form>
</td>


aca a ingreso.php no le estas enviando ningun campo, los campos no los estas tomando dentro de ese form.. deberias tner el botón submit llamado ingresar dentro del form que contiene todos tus datos...

<form method="POST" action="ingreso.php">

<tr valign="top">

<!--FECHA-->
<td>
<input type="text" name="DD" size="2" value="<? print date("d"); ?>">
</td>
<td>
<input type="text" name="MM" size="2" value="<? print date("m"); ?>">
</td>
<td>
<input type="text" name="AAAA" size="4" value="<? print date("Y"); ?>">
</td>

<!--MONTO-->
<td><input type="text" name="monto" size="8"></td>

<!--MONEDA-->
<td>
<select name="moneda">
<option value="Soles">Soles</option>
<option value="Dolares">Dolares</option>
</select>
</td>

<!--OPERACION-->
<td>
<select name="operacion">
<option value="Ingreso">Ingreso</option>
<option value="Egreso">Egreso</option>
</select>
</td>

<!--TIPO TRANSACCION-->
<td>
<select name="tipo_trans">
<?
include "conexion.php";
$consulta = "SELECT tipo_trans FROM tipo_trans";
$result = mysql_query($consulta);
while ($row = mysql_fetch_array($result)){
$tipo_trans = $row["tipo_trans"];
echo "<option value='$tipo_trans'>$tipo_trans</option>";
}
include "cerrarconexion.php";
?>
</select>
</td>

<!--USUARIOS-->
<td>
<select name="usuarios">
<?
$dbhost = "localhost";
$dbusuario = "dbusuario";
$dbpassword = "dbpassword";
$db1 = "db1";
$conexion1 = mysql_connect($dbhost, $dbusuario, $dbpassword);
mysql_select_db($db1, $conexion1);
$consulta = "SELECT cl_user_name FROM phpcoin_clients ORDER BY cl_user_name ASC";
$result = mysql_query($consulta);
while ($row = mysql_fetch_array($result)){
$usuarios = $row["cl_user_name"]; //variable para mostrar
echo "<option value='$usuarios'>$usuarios</option>";
}
mysql_close($db1);
?>
</select>
</td>

<!--TRANSACCION-->
<td><input type="text" name="trans" size="40"></td>

<!--NOTAS-->
<td><textarea name="notas" cols="20"></textarea></td>


</tr>
<tr valign="top">

<!--INSERCION DE TRANSACCIONES-->
<td colspan="5" align="left">
<input type="submit" name="ingresar" value="Ingresar Transaccion">
</form>
</td>

<!--MOSTRAR TRANSACCIONES-->
<td colspan="5" align="left">
<form method="post" action="barrido.php">
<input type="submit" name="barrido" value="Mostrar Transacciones">
</form>
</td>
</tr>
</table>
<?
if ($ingresar){
include "conexion.php";
$fecha = $AAAA. -$MM. -$DD;
$consulta = "INSERT INTO trans (fecha, monto, moneda, operacion, tipo_trans, trans, usuario, notas, id)
VALUES ('$fecha', '$monto', '$moneda', '$operacion', '$tipo_trans', '$trans', '$usuarios', '$notas', '$id')";
$result = mysql_query($consulta);
include "cerrarconexion.php";
}
?>

quite el form que te dije.. y solo deje uno donde estan los campos y el boton ingresar.. mira a ver si depronto.. creo que ese es el problema.. pero revisalo porque no se que tan bien lo hice...
  #5 (permalink)  
Antiguo 25/05/2004, 16:32
Avatar de davidrenzzo  
Fecha de Ingreso: enero-2004
Mensajes: 59
Antigüedad: 20 años, 2 meses
Puntos: 0
Listo Salome muchas gracias, funciono. Ahora tengo otro pequeño problema, los valores q se insertan en los "<select>" no estan siendo capturados. Para tipo de transaccion toma por defecto el primer valor, y para los usuarios toma por defecto el ultimo campo.
__________________
www.gradamedia.com

Última edición por davidrenzzo; 25/05/2004 a las 16:36
  #6 (permalink)  
Antiguo 26/05/2004, 07:33
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
mmmm no están siendo capturados o no se hace toda la consulta?.. es decir.. muestra todos los datos bien?.. o solo uno en el select?.. o te muestra siempre el mismo.. no te entendi muy bien creo..
  #7 (permalink)  
Antiguo 26/05/2004, 09:48
Avatar de davidrenzzo  
Fecha de Ingreso: enero-2004
Mensajes: 59
Antigüedad: 20 años, 2 meses
Puntos: 0
Hace la consulta a la perfeccion MUESTRA todos los datos, pero al INSERTAR solo inserta, en el caso de los tipos de trans, el primer registro; y en el caso de los usuarios el ultimo de todos...
__________________
www.gradamedia.com
  #8 (permalink)  
Antiguo 26/05/2004, 09:53
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
mmmm
  #9 (permalink)  
Antiguo 26/05/2004, 09:56
Avatar de davidrenzzo  
Fecha de Ingreso: enero-2004
Mensajes: 59
Antigüedad: 20 años, 2 meses
Puntos: 0
raro no?
__________________
www.gradamedia.com
  #10 (permalink)  
Antiguo 26/05/2004, 09:58
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
yo te pregunto algo.. cuando vos generas la pagina... y te sale el select con todos los datos... y le das ver codigo fuente.. el select te sale con los value bien???... si me entiendes??
  #11 (permalink)  
Antiguo 26/05/2004, 11:08
Avatar de davidrenzzo  
Fecha de Ingreso: enero-2004
Mensajes: 59
Antigüedad: 20 años, 2 meses
Puntos: 0
si te entiendo y aparace cada uno de los valores, ninguno sin errores...
__________________
www.gradamedia.com
  #12 (permalink)  
Antiguo 26/05/2004, 11:35
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
pero entonces si es asi.. y los values del select estan correctos.. y se pueden ver cuando miras el codigo fuente de la pagina.. que es!! mmmmm.....
tenes donde pueda ver la página funcionando?? o lo estas haciendo local?
  #13 (permalink)  
Antiguo 26/05/2004, 15:23
Avatar de davidrenzzo  
Fecha de Ingreso: enero-2004
Mensajes: 59
Antigüedad: 20 años, 2 meses
Puntos: 0
lo estoy haciendo local, el problema persiste.
__________________
www.gradamedia.com
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 09:35.