Foros del Web » Programando para Internet » PHP »

Problema con consulta "Update"

Estas en el tema de Problema con consulta "Update" en el foro de PHP en Foros del Web. Hola, Tengo un formulario para editar 3 campos de usuario en una bd y estoy intentando que además del usuario en cuestión, también el administrador ...
  #1 (permalink)  
Antiguo 07/04/2008, 04:22
NiB
 
Fecha de Ingreso: octubre-2005
Mensajes: 59
Antigüedad: 19 años, 1 mes
Puntos: 0
Problema con consulta "Update"

Hola,

Tengo un formulario para editar 3 campos de usuario en una bd y estoy intentando que además del usuario en cuestión, también el administrador pueda modificar esos datos.
El problema que no logro solucionar es que cuando le paso la variable $id de otra forma que no sea:

Código PHP:
$id=$_SESSION["userid"]; 
solo modifica el primer campo, en los 2 siguientes no realiza el cambio.


Os pongo el código del proceso:

Código PHP:
    function editSpaceProcess($formvars)
    {
      
$headline=$this->escape($formvars["headline"]);
      
$content=$this->escape($formvars["content"]);
      
$rcontent=$this->escape($formvars["rcontent"]);

//OPCION1, la original pero no deseada.
//(Aqui funciona perfectamente, cambia los 3 campos)
$id=$_SESSION["userid"];

//OPCION2
// (A pesar de usar sesiones, solo cambia el primer campo)
$id=$_SESSION["pasarid"];

//OPCION3
// (Pasada a través de formulario con hidden, solo cambia el primer campo)
$id=$formvars["pasarid"];

//OPCION4
// (Cookie definida en el anterior paso, solo cambia el primer campo)
$id=$_COOKIE["pasarid"];

      
$change_headline="UPDATE users SET `headline`='$headline' 
      WHERE `id`='$id'"
;
      
mysql_query($change_headline) or die("Error updating headline: " mysql_error());
 
      
$change_content="UPDATE space_content SET `content`='$content' 
      WHERE `user_id`='$id'"
;
      
mysql_query($change_content) or die("Error updating content: " mysql_error());
    
      
$change_rcontent="UPDATE right_content SET `content`='$rcontent'
      WHERE `user_id`='$id'"
;
      
mysql_query($change_rcontent) or die("Error updating rcontent: " mysql_error());
      
      
$this->isLoggedIn();
      
$this->theme(); 
      
$this->tpl->display('spacechanged.tpl');
    } 
Pues lo dicho, únicamente dejando la linea original $id=$_SESSION["userid"]; modifica los 3 campos, los valores en las otras opciones llegan a la función, porque modifica el primer campo (headline) pero no los siguientes.

A ver si podéis echarme una mano con esta rara situación (al menos para un novato como yo)

gracias de antemano

Última edición por NiB; 07/04/2008 a las 13:51
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 14:06.