Foros del Web » Programando para Internet » PHP »

reemplazar una imagen por otra en php

Estas en el tema de reemplazar una imagen por otra en php en el foro de PHP en Foros del Web. Buenas gente de forodelweb eh estado haciendo una pequena aplicacion en php y mysql y encontre mas o menos como guardar imágenes en carpetas y ...
  #1 (permalink)  
Antiguo 03/11/2011, 16:28
Usuario no validado
 
Fecha de Ingreso: enero-2010
Ubicación: Maturín, Monagas
Mensajes: 190
Antigüedad: 14 años, 10 meses
Puntos: 24
Exclamación reemplazar una imagen por otra en php

Buenas gente de forodelweb eh estado haciendo una pequena aplicacion en php y mysql y encontre mas o menos como guardar imágenes en carpetas y mostrarlas con el nombre que se guarda en la bd aquí les adjunto el código:

Código PHP:
Ver original
  1. $conexion = mysql_connect("127.0.0.1","root","") or die("No se pudo realizar la conexion con el servidor.");
  2. mysql_select_db("imagenes",$conexion) or die("No se puede seleccionar BD"); // tu_bd es el nombre de la Base de datos .. por siaca.
  3.  
  4. $ruta="./uploads/";//ruta carpeta donde queremos copiar las imágenes
  5. $uploadfile_temporal=$_FILES['fichero']['tmp_name'];
  6. $uploadfile_nombre=$ruta.$_FILES['fichero']['name'];
  7.  
  8. if (is_uploaded_file($uploadfile_temporal))
  9. {
  10.     move_uploaded_file($uploadfile_temporal,$uploadfile_nombre);
  11. }
  12. else
  13. {
  14. echo "error";
  15. }
  16.  
  17. $id = mysql_insert_id();
  18.    // Guardamos en la BBDD
  19.    $nombre=$_FILES['fichero']['name'];
  20.     $sql= "INSERT INTO imagen (nombre,id) VALUES ('$nombre','')";
  21.     $resultado = mysql_query($sql);
  22.  
  23.     // Por si queremos la ID asignada a la imagen
  24.    
  25. $sql = mysql_query("SELECT * FROM imagen WHERE nombre = '".$nombre."'");
  26. $filas=mysql_fetch_array($sql);
  27. $mostrar=$filas['nombre'];
  28. echo $mostrar;
  29.  
  30.     $url="./uploads/".$mostrar;
  31. ?>
  32. <html><body>
  33. <br>
  34. <?php  echo "<img width=88 height=80 src=".$url.">";  ?>
  35. </body></html>


Eh encontrado eso y adaptado a mi necesidad de aqui mismo de forosdelweb, pero deseo ahora y que no encuentro es como reemplazar una imagen por otra y tambien poder eliminarlas, casi no encuentro informacion realmente si alguien tiene un tutorial de ayuda o un script bienvenido sea.

gracias de antemano.
  #2 (permalink)  
Antiguo 03/11/2011, 18:38
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 14 años
Puntos: 32
Respuesta: reemplazar una imagen por otra en php

Hola, para borrar un archivo creo que puedes intentar con unlink()

Código PHP:
<? 
$dir
='direccion del archivo'//ubicación en el host (EJ, /imagenes/foto.jpg)
if(file_exists($dir)) //verifica que el archivo existe
 

 if(
unlink($dir)) // si es true, llama la función
echo "El archivo fue borrado"
 } 
else 
 echo 
"Este archivo no existe"//si no, lo avisa.

?>
Recuerda que la carpeta y archivo que deseas borrar debe tener los permisos (chmod) correspondientes.

Lo segundo no lo entendí bien. "como reemplazar una imagen por otra". Se me ocurren varias ideas, como por ejemplo subir una imagen con el mismo nombre de la que se desea reemplazar.

Saludos
__________________
La ciencia al poder. Pazciencia ya viene
  #3 (permalink)  
Antiguo 03/11/2011, 18:45
Usuario no validado
 
Fecha de Ingreso: enero-2010
Ubicación: Maturín, Monagas
Mensajes: 190
Antigüedad: 14 años, 10 meses
Puntos: 24
Respuesta: reemplazar una imagen por otra en php

Hola gracias en la de borrar use lo siguiente indagando por hay:

Código PHP:
Ver original
  1. <?php
  2. $conexion = mysql_connect("127.0.0.1","root","") or die("No se pudo realizar la conexion con el servidor.");
  3. mysql_select_db("imagenes",$conexion) or die("No se puede seleccionar BD");
  4.  
  5. $id=$_GET["id"];
  6.  
  7. $sql = mysql_query("SELECT * FROM imagen WHERE id = '".$id."'");
  8. $filas=mysql_fetch_array($sql);
  9. $mostrar=$filas['nombre'];
  10. $url="./uploads/".$mostrar;
  11.  
  12.  $sql = "SELECT * FROM imagen where nombre=";
  13. mysql_query("DELETE FROM imagen WHERE id='".$id."'")or die(mysql_error());
  14.  
  15. //eliminando del servidor
  16. unlink($url);//sabiendo que estos son los parametros para tu caso
  17. header("location: listar_imagenes.php");
  18. ?>

osea es como hacer un update de un campo cualquiera pero en este caso es de una imagen no se si me entiendes creo puedo hacerlo guardando la imagen con el nombre del usuario o su id pero hay tambien estoy un poco perdido sobre como cambiar el nombre al subir una imagen con php. Me explico mas o menos?
  #4 (permalink)  
Antiguo 03/11/2011, 19:52
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 14 años
Puntos: 32
Respuesta: reemplazar una imagen por otra en php

Creo entender, tu duda es : por ejemplo, soy un usuario de tu website y tengo una imagen de perfil y la quiero cambiar.... Si por ahí va la cosa, creo que lo que te servirá este código.

Esta tal cual sirve en un sitio donde deben reemplazar constantemente imágenes.

Código PHP:



if (move_uploaded_file($_FILES["archivo"]["tmp_name"], "imagenes/$carpeta/".$archivo_nombre)){
echo 
"Nombre de la imagen $archivo_nombre";}
else{ 
echo 
"<br>Imagen  No cargada <img src='rechaz.gif'width='20' height='20' /><br>"
}

$sql_query "UPDATE propiedades SET  $foto = '$ubicacion' WHERE id = '$codigo' ";

if(
mysql_query ($sql_query,$conexion)){
echo 
"<br>Propiedad $codigo AGREGÓ IMAGEN A $ubicacion <img src='aprov.gif'width='20' height='20' /><br>"
}else{ 
die (
"<br>No se ejecutó, verifique que el código sea el correcto. <img src='rechaz.gif'width='20' height='20' /><br>"); 
}

//OJO $codigo es el numero de identificacion, yo uso el de la casilla autoincrementable 
__________________
La ciencia al poder. Pazciencia ya viene
  #5 (permalink)  
Antiguo 04/11/2011, 05:52
Usuario no validado
 
Fecha de Ingreso: enero-2010
Ubicación: Maturín, Monagas
Mensajes: 190
Antigüedad: 14 años, 10 meses
Puntos: 24
Respuesta: reemplazar una imagen por otra en php

Buenísimo probare ahora, también uso el de la casilla de autoincrementar

Gracias!!

Etiquetas: carpetas, reemplazar., sql
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 22:21.