Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Funcion rename y luego copy

Estas en el tema de Funcion rename y luego copy en el foro de PHP en Foros del Web. El caso es que quiero renombrar una imagen antes de subirla al servidor y creo que tengo el codigo bastante bien pero no me las ...
  #1 (permalink)  
Antiguo 08/05/2014, 09:12
 
Fecha de Ingreso: mayo-2014
Mensajes: 30
Antigüedad: 10 años, 6 meses
Puntos: 0
Exclamación Funcion rename y luego copy

El caso es que quiero renombrar una imagen antes de subirla al servidor y creo que tengo el codigo bastante bien pero no me las renombra y me pone este error.

Warning: copy() [function.copy]: The second argument to copy() function cannot be a directory in /home/gastanet/public_html/back/addimages.php on line 258

El codigo con el que subo la imagen y la intento renombrar es este->


$consulti="SELECT id_product,friendly_url FROM products_text WHERE id_product='$codigo'";
$quer=mysql_query($consulti,$conex) or die("Error: ". mysql_error());
while($agr=mysql_fetch_array($quer))
{
$ident=$agr["id_product"];
$friendly=$agr["friendly_url"];
$explosion=explode($nombreimg,".");
echo $explosion["0"];
$nuevo_nombre=rename($explosion["0"].".".$explosion["1"],$ident."-".$friendly.".".$extension);
}
$mi_ruta_relativa="imagenes/imagenes_producto/".$algo["name_type"]."/".$nuevo_nombre;
$copio=copy($nombre_tmp,$mi_ruta_relativa);
//redimensionar($mi_ruta_relativa,$algo["width"],$algo["height"]) or die("No se han redimensionado las imagenes");
if(!$copio)
{
echo $nuevo_nombre;
die("No se han podido subir las imagenes");
}



Ojala alguno de vosotros buenos samaritanos me eche una mano por que me estoy volviendo loco jaajj Un saludo y gracias de antemano
  #2 (permalink)  
Antiguo 08/05/2014, 09:25
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: Funcion rename y luego copy

Así de buenas a primeras, noto un error al separar el nombre de la imagen de su extensión. A diferencia de la función implode, en la función explode, el separador debe ser sí o sí el primer parámetro, así que desde ahí ya tienes un error. El primer parámetro cuando usas la función rename, tranquilamente puede ser $nombreimg pues veo que solamente unes lo que habías separado previamente.

No sé cómo es que llega el valor de la imagen, si es una subida o si estás tomando el nombre de la imagen previamente guardada (que es lo que tiene más sentido), pero antes de usar la función copy, verifica que los valores de $nombre_tmp y $mi_ruta_relativa, sean los correctos.

Y por favor, cuando coloques código, utiliza el highlight respectivo.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 09/05/2014, 02:27
 
Fecha de Ingreso: mayo-2014
Mensajes: 30
Antigüedad: 10 años, 6 meses
Puntos: 0
Sonrisa Respuesta: Funcion rename y luego copy

Tienes razón error mio..pero lo he corregido y sigue sin funcionarme.Lo estoy haciendo en un subida por que quiero que las imagenes que suba esten renombradas a mi gusto y que guarde su ruta con el nuevo nombre en la base de datos.

En el rename trato de que me concatene varios datos sacados de la base de datos para que las imagenes queden mas o menos asi.

id_product-friendly_url

Por ejemplo
1-producto-numero-1

Me esta volviendo loco esta parte de las imagenes tanto el rename como el redimensionado.
Por favor echadme una mano




Un saludo y gracias por la atencion
  #4 (permalink)  
Antiguo 09/05/2014, 02:41
 
Fecha de Ingreso: mayo-2014
Mensajes: 5
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: Funcion rename y luego copy

Muy buenas!!!

Primero, mira a ver si tienes permiso para escribir y/o sobreescribir en la carpeta de destino.
Y segundo, muestra por pantalla el nombre de destino del fichero a ver si lo estas generando mal.
  #5 (permalink)  
Antiguo 09/05/2014, 03:06
 
Fecha de Ingreso: mayo-2014
Mensajes: 30
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: Funcion rename y luego copy

La ruta me la muestra bien pero no me muestra el nombre nuevo que le quiero dar a la imagenes.
Y los permisos los tengo todos 777...
Asi que no se...
  #6 (permalink)  
Antiguo 09/05/2014, 04:56
 
Fecha de Ingreso: mayo-2014
Mensajes: 5
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: Funcion rename y luego copy

Tienes definido

$extension


No lo veo en el código.
  #7 (permalink)  
Antiguo 09/05/2014, 05:54
 
Fecha de Ingreso: mayo-2014
Mensajes: 30
Antigüedad: 10 años, 6 meses
Puntos: 0
De acuerdo Respuesta: Funcion rename y luego copy

Esta solucionado tenia un error en la consulta a la bd,lo siento por no haberme dado cuenta antes.Ahora el problema gordo viene con la mierda de los headers para redimensionar imagen pero eso ya lo pondre en otro hilo.

Un saludo y gracias!

Etiquetas: copy, imagenes, mysql, rename, renombrar
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 10:29.