Foros del Web » Programando para Internet » PHP »

Cambiar nombre de foto

Estas en el tema de Cambiar nombre de foto en el foro de PHP en Foros del Web. Muy buenas; Realizo un upload de imágenes del siguiente modo: Código PHP: //$archivo en el campo "foto" de mi formulario $extension  =  explode ( "." , $archivo_name );  $num  =  count ( ...
  #1 (permalink)  
Antiguo 17/02/2003, 04:20
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Cambiar nombre de foto

Muy buenas;

Realizo un upload de imágenes del siguiente modo:
Código PHP:
//$archivo en el campo "foto" de mi formulario
$extension explode(".",$archivo_name); 
$num count($extension)-1
if(
$extension[$num] != "jpg") { 
echo 
"el formato de archivo no es valido, solo .jpg"; }
    elseif(
$archivo_size 30000)     {
    echo 
"el archivo supera los 30kb"; }
        elseif(!
copy($archivo"archivos/".$archivo_name)) { 
        echo 
"error al copiar el archivo"; } 
            else { 

$padentro mysql_query("insert into ... 
y el problema con el que me encuentro es con que me resulta muy dificil identificar cada foto con cada usuario, por lo que he pensado en que cada foto deberá de llamarse como el dni de cada uno.
Tengo en mi formulario el campo DNI y quisiera saber si se puede renombrar las fotos (con lo que el usuario haya puesto en dicho campo) durante el proceso de guardado de los datos.

Espero se me entienda. Gracias
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #2 (permalink)  
Antiguo 17/02/2003, 10:31
Avatar de rickoe
Colaborador
 
Fecha de Ingreso: abril-2001
Mensajes: 353
Antigüedad: 16 años, 7 meses
Puntos: 2
Asi:

Cita:
rename
(PHP 3, PHP 4 >= 4.0.0)

rename -- Renombra un fichero
Descripción

int rename (string oldname, string newname)

Trata de renombrar oldname como newname.

Devuelve TRUE en caso de éxito y FALSE en caso de fallo.

Espero te sirva

Saludos

Rickoe
__________________
Mejor Jeep Imposible
  #3 (permalink)  
Antiguo 17/02/2003, 11:14
Avatar de luigivirgo  
Fecha de Ingreso: enero-2003
Ubicación: Toluka mejiko
Mensajes: 150
Antigüedad: 14 años, 10 meses
Puntos: 0
la otra opcion

la otra opcion seria ke krearas ejor un directorio por usuario de esta forma estaria ma organizadas tus fotos y esas kosas

asi no tendrias problemas el nombre del directorio podria ser ese dni ke tienes


si no la forma de kambiar de nombre
solo has lo siguiente

Código PHP:
//$archivo en el campo "foto" de mi formulario
$extension explode(".",$archivo_name); 
$num count($extension)-1
if(
$extension[$num] != "jpg") { 
echo 
"el formato de archivo no es valido, solo .jpg"; }
    elseif(
$archivo_size 30000)     {
    echo 
"el archivo supera los 30kb"; }
        elseif(!
copy($archivo"archivos/$dni_".$archivo_name)) { 
///donde $dni es el kampo de identificacion de tu usuario
        
echo "error al copiar el archivo"; } 
            else { 

$padentro mysql_query("insert into ... 
__________________
no olvides visitar tu propia komputadora en
http://computadora.de
http://paginaweb.de/luigivirgo/luis.jpg
  #4 (permalink)  
Antiguo 17/02/2003, 11:25
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Está genial!!, ¿como saben tanto?

Funciona muy bien, pero lo que me hace es poner el nº de DNI segido del nombre de la foto, osea:

5253252mifoto.jpg

que equivale a esto : "archivos/$dni".$archivo_name

y mi pregunta es, ¿podemos prescindir de este "$archivo_name
" sin eliminar la extensión JPG de la foto.

Si no se puede, no importa, está perfecto así.

Muchas gracias!!!
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #5 (permalink)  
Antiguo 17/02/2003, 11:29
Avatar de luigivirgo  
Fecha de Ingreso: enero-2003
Ubicación: Toluka mejiko
Mensajes: 150
Antigüedad: 14 años, 10 meses
Puntos: 0
klaro ke si

si se puede kasi te estas dando la respuesta tu solo

Código PHP:
//$archivo en el campo "foto" de mi formulario
$extension explode(".",$archivo_name); 
$num count($extension)-1
if(
$extension[$num] != "jpg") {  


///aki tienes el nombre de la extencion no? ahora no necesitas kiratla puesto ke solo aceptas extanciones jpg lo podrias dejar estatiko



echo "el formato de archivo no es valido, solo .jpg"; }
    elseif(
$archivo_size 30000)     {
    echo 
"el archivo supera los 30kb"; }
        elseif(!
copy($archivo"archivos/$dni.jpg")) { 

///donde $dni es el kampo de identificacion de tu usuario
asi tendrias komo resultado 34224242423.jpg




        
echo "error al copiar el archivo"; } 
            else { 

$padentro mysql_query("insert into ... 
__________________
no olvides visitar tu propia komputadora en
http://computadora.de
http://paginaweb.de/luigivirgo/luis.jpg
  #6 (permalink)  
Antiguo 17/02/2003, 11:32
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Genial !!!
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.

Última edición por ferent; 17/02/2003 a las 13:04
  #7 (permalink)  
Antiguo 17/02/2003, 13:03
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
otra duda

Tengo otra duda;

la imagen la inserto en un campo de imagen del siguiente modo


Código PHP:
<img name="" src="<?php $dni $row["DNI"]; 
echo 
"archivos/$dni.jpg"?>" width="96" 
height="108" alt="Fotografía" style="background-color: 
#666666">
Pero me encuentro ante el problema de que si mi usuario no manda una imagen el campo queda sin foto y con la mega-conocida X de foto no encontrada.

¿Saben de algún método para que reconozca si hay alguna foto y que si no encuentra alguna coincidiente con DNI pues que me coja otra que ya tengo creada en la misma carpeta para estos casos?

Gracias de nuevo
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #8 (permalink)  
Antiguo 17/02/2003, 13:40
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 15 años, 4 meses
Puntos: 8
Podrias haces una condicion con file_exists();
Quedaria +o - asi:
Código PHP:
<?php
$dni 
$row["DNI"];
if (
file_exists("archivos/$dni.jpg")) {
   
$imagen "archivos/$dni.jpg";
} else {
   
$imagen "archivos/otraimagen.jpg";
}
?>

<img name="" src="<?= $imagen ?>" width="96"
height="108" alt="Fotografía" style="background-color:
#666666">
Mas info en...
http://www.php.net/manual/es/function.file-exists.php
  #9 (permalink)  
Antiguo 18/02/2003, 02:40
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Me arrodillo ante vuestra sabiduría, muchas gracias
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
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 23:04.