Foros del Web » Programando para Internet » PHP »

Actualizar base de datos

Estas en el tema de Actualizar base de datos en el foro de PHP en Foros del Web. Hola, buenas a todos, intento actualizar los datos de una base de la siguiente forma: PRIMER ARCHIVO Existe un primer formulario en el que seleccionas ...
  #1 (permalink)  
Antiguo 01/06/2006, 18:40
 
Fecha de Ingreso: septiembre-2004
Mensajes: 60
Antigüedad: 19 años, 7 meses
Puntos: 0
Actualizar base de datos

Hola, buenas a todos, intento actualizar los datos de una base de la siguiente forma:
PRIMER ARCHIVO
Existe un primer formulario en el que seleccionas el producto a modificar.

SEGUNDO ARCHIVO
En este muestro los datos del producto que seleccione en el formulario primero asi:
Código:
include("sql.php");
 $result=mysql_db_query("base","SELECT * FROM tabla where id=".$HTTP_POST_VARS['id'] ,$con);
 $row = mysql_fetch_row($result);
mostrandolos por id, despues esto lo paso por POST A OTRO FOMULARIO por un campo oculto asi (paso el id y la referencia):
Código:
<input type="hidden" name="id" value="<?php echo $row[0];?>">
<input type="hidden" name="ref" value="<?php echo $row[5];?>">
TERCER ARCHIVO
3- El formulario que debe de actualizar los datos es el siguiente:
Código:
<?
include("sql.php");
// Esta id viene por un campo oculto
$id=$HTTP_POST_VARS['id'];
// La referencia que viene por un campo oculto
$referencia_nueva = $HTTP_POST_VARS['ref'];
$res=mysql_db_query("base","update tabla SET referencia='$referencia_nueva' where id='$id' ")or die(mysql_error()); 
mysql_close($con);
header ('location: actualizar.php');

?>
Pero el problema es que no actualiza la referencia, esto creo que es debido a que la refeencia no pasa del 2 formulario al 3, ya que del primero si pasa al segundo.

He estado probando numeros posibilidades y no doy con ello, he de decir que soy bastante nuevo en esto y es por eso que no consigo dar con la solucion.

Gracias
  #2 (permalink)  
Antiguo 02/06/2006, 03:33
 
Fecha de Ingreso: enero-2002
Ubicación: Barcelona
Mensajes: 279
Antigüedad: 22 años, 3 meses
Puntos: 1
lo primero que debes hacer es asegurarte que los parámetros están llegando, haz que se impriman en pantalla:

Código:
include("sql.php");
// Esta id viene por un campo oculto
$id=$HTTP_POST_VARS['id'];

//ver si $id toma valor
echo $id;

// La referencia que viene por un campo oculto
$referencia_nueva = $HTTP_POST_VARS['ref'];

//ver si ref toma valor
echo $referencia_nueva

$res=mysql_db_query("base","update tabla SET referencia='$referencia_nueva' where id='$id' ")or die(mysql_error()); 
mysql_close($con);
header ('location: actualizar.php');
TE devuelve algun error??
__________________
Sataca - La Retícula
www.lareticula.com
  #3 (permalink)  
Antiguo 02/06/2006, 07:41
 
Fecha de Ingreso: septiembre-2004
Mensajes: 60
Antigüedad: 19 años, 7 meses
Puntos: 0
Ya vi el error

Hola ante todo gracias por tu respuesta.
Ayer estaba esta los ***** y era ya tarde pero pensaba que el error venia al no pasar los datos del 2 archivo al ultimo, con el echo se confirmo, pasaba la id pero no el otro dato, ¿por que?

Pues simplemente por un descuido ya que el id lo sacaba de la base de datos y siempre estaba pero el "ref" no lo declaraba en ninguna parte del formulario ya que lo hacia asi:

<input name="texarea" type="text" id="cambio_referencia" value="<?php echo $row[5] ?>" size="15" maxlength="15">

en vez de hacerlo asi:

<input name="ref" type="text" id="cambio_referencia" value="<?php echo $row[5] ?>" size="15" maxlength="15">

Pues nada simplemente nombrando al texarea como ref solucionado.

Bueno 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.
Respuesta




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