Foros del Web » Programando para Internet » PHP »

actualizar

Estas en el tema de actualizar en el foro de PHP en Foros del Web. Hola amigos, tengo una duda, al querer actualizar un registro, en este caso, de un usuario cuyo perfil tiene una imagen, al actualizar sus datos ...
  #1 (permalink)  
Antiguo 28/05/2009, 14:48
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
actualizar

Hola amigos, tengo una duda, al querer actualizar un registro, en este caso, de un usuario cuyo perfil tiene una imagen, al actualizar sus datos por un formulario y proceso todos los datos incluido su imagen y las actualizo en la BD y su imagen en una carpeta, bien, una vez terminado todo este proceso, en caso hay sido exitoso yo redirijo a una pagina que contienen la lista de usuarios de esta manera:

echo "<meta http-equiv='Refresh' content='1;URL=usuario_lista.php'>";

Pero cuando veo en la lista el usuario recien actualizado, veo la imagen anterior (la eliminada) y siempre tengo que darle F5 o el boton actualizar del browser para que me muestre recien la nueva imagen, esto es un problema de mi codigo o del mismo browser? creo que es el cache o algo parecido... se puede solucionar eso?
__________________
Quitenme la vida pero no la bebida.
  #2 (permalink)  
Antiguo 28/05/2009, 14:53
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: actualizar

es algo del cache del navegador con ese codigo vuelves la pagina atras y por ende te muestra lo que había lo que el navegador tenia, me parece que hay un codigo en los meta que te quita los valores del cache y te carga todo nuevamente, no-cache


< META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE" />
< META HTTP-EQUIV="EXPIRES" CONTENT="-1" />

creo que era algo asi saludos...
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #3 (permalink)  
Antiguo 28/05/2009, 14:54
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: actualizar

Si estas guardando la imagen con el mismo nombre, entonces el navegador la carga desde el cache y es por eso que tienes que actualizar para que se vea el cambio. Creo que solo cambiando el nombre de la imagen podras evitar este problema.
__________________
- León, Guanajuato
- GV-Foto
  #4 (permalink)  
Antiguo 28/05/2009, 15:22
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: actualizar

Hola, gracias por responder .... primero probe con esos metas, pero no funcionaron. Segundo, quizas el problema sea que sigo usando el mismo nombre pero mi prioridad es la de mantener el nombre ya que se genera por algunos datos de mi BD. mmmmm hay algun meta que te actualize la web ni bien la cargas? (tan solo una vez)
__________________
Quitenme la vida pero no la bebida.
  #5 (permalink)  
Antiguo 28/05/2009, 15:33
 
Fecha de Ingreso: marzo-2009
Mensajes: 69
Antigüedad: 15 años, 1 mes
Puntos: 1
Respuesta: actualizar

tranquila mira... yo pude arreglar eso con esto .. en la pagina donde cargas la imagen... deberias tener esto
Código PHP:
$us = new Usuario();
if(
$us->buscarTodos()){
    
//Randomico para q actualize la imagen, si no pongo randomico... no se actualiza la imagen cuando la cambio.
    
$numero rand(1,100)*rand(1,10);
    while(
$us->siguiente()){
        
        echo 
"<tr>";    
        echo 
"<td><img src='../Fotos_Usuario/".$us->codus.".jpg?x=$numero>' with='75' height='75' alt=''/></td>";
        echo 
"<td><align='center'><font size='3'>" .trim($us->nombre). "</font></align></td>";
        echo 
"<td><align='center'><font size='3'>" .trim($us->apellido). "</font></align></td>";
        echo 
"<td><align='center'><font size='3'>" .trim($us->ci). "</font></align></td>";
        echo 
"<td><align='center'><font size='3'>" .trim($us->fecha_nac). "</font></align></td>";
        echo 
"<td><align='center'><font size='3'><strong>" .trim($us->login). "</strong></font></align></td>";
        if(
$us->direccion !="")
        { 
//uso la funcion substr del php para mostrar solamente una parte del campo Direccion. 
          
echo "<td><align='center'><font size='3'>".substr($us->direccion,0,15)."...</font></align></td>";
        }
        else
        { 
//Si esta vacion el campo DIRECCION, mostramos ese dato .. tal como está 
          
echo "<td><align='center'><font size='3'>" .trim($us->direccion). "</font></align></td>";
        }
        echo 
"<td><align='center'><font size='3'><strong>" .trim($us->contraseña). "</strong></font></align></td>";
        echo 
"<td><align='center'><font size='3'>" .trim($us->telefono). "</font></align></td>";
    echo 
"<td><a href='frmModificarUsuario.php?codusu=".$us->codus"&nombre=" .$us->nombre"&apellido=".$us->apellido."&ci=".$us->ci."&f_nac=".$us->fecha_nac."&login=".$us->login."&dir=".$us->direccion."&contraseña=".$us->contraseña."&telefono=".$us->telefono."'><img src='../Imagenes/user_edit.png' border='0' alt='Modificar Usuario'/></a></td>";
        echo 
"<td><a href='javascript:js_Eliminar($us->codus)'><img src='../Imagenes/user_delete.png' border='0' alt='Eliminar Usuario' /></a></td>";
        echo 
"</tr>";
    }
    
  echo 
"<td><a href='FrmAdm/frmgestionadm.php'><img src='../Imagenes/atras.gif' border='0' alt='Registrar Usuario'/></a>";

Como ves en mi segundo echo del while de busqueda... le envio un valor pot parametro.. ese valor tiene q ser randomico ... adaptalo a tu codigo
  #6 (permalink)  
Antiguo 28/05/2009, 15:49
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: actualizar

hola jhoel:

primero: no soy tranquila , soy tranquilo xd

segundo: $numero = rand(1,100)*rand(1,10); //ahi generas un numero aleatorio

tercero : $us->codus.".jpg?x=$numero

supongo que $us->codus.jpg le asignas el codigo de usuario como nombre de imagen... pero para que es el ?x=$numero

disculpa mi ingnorancia y espero me expliques , saludos!
__________________
Quitenme la vida pero no la bebida.
  #7 (permalink)  
Antiguo 28/05/2009, 16:03
 
Fecha de Ingreso: marzo-2009
Mensajes: 69
Antigüedad: 15 años, 1 mes
Puntos: 1
Respuesta: actualizar

exacto .. el codigo le asigno como nombre a la imagen ... ese truquito es por que .. al momento de mostrar la pagina, la imagen la saca de la cachè, pero con esa variable q estas mandando , osea la x= numeroaleatorio..., actualizarà la pagina recibiendo un nuevo parametro ...

Última edición por JhoelSub; 28/05/2009 a las 16:09
  #8 (permalink)  
Antiguo 28/05/2009, 16:22
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: actualizar

simplemente excelente , nunca se me habia ocurrido esa solucion .... muchisimas graciassss
__________________
Quitenme la vida pero no la bebida.
  #9 (permalink)  
Antiguo 28/05/2009, 16:30
 
Fecha de Ingreso: marzo-2009
Mensajes: 69
Antigüedad: 15 años, 1 mes
Puntos: 1
Respuesta: actualizar

Para eso es esta comunidad .... ayudarnos mutuamente ... yo estoy ahora con un problem con AJAX ... por si acaso.. sabes AJAX?
  #10 (permalink)  
Antiguo 28/05/2009, 16:32
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: actualizar

sorry, solo se usar ajax para mandar correos :P ....
__________________
Quitenme la vida pero no la bebida.
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 06:46.