Foros del Web » Programando para Internet » PHP »

funcion copy

Estas en el tema de funcion copy en el foro de PHP en Foros del Web. Buenos dias Lo estoy haciendo una instruccion que me permita copiar un archivo y copiarlo en una carpeta, el archivo me lo crea en la ...
  #1 (permalink)  
Antiguo 26/04/2011, 11:13
 
Fecha de Ingreso: febrero-2009
Mensajes: 199
Antigüedad: 15 años, 2 meses
Puntos: 3
Mensaje funcion copy

Buenos dias Lo estoy haciendo una instruccion que me permita copiar un archivo y copiarlo en una carpeta, el archivo me lo crea en la carpeta pero sin el contenido y el contenido del archivo origen es borrado alguna idea como componer el error.

Código PHP:
$old 'archivo.sql';
$new 'files/archivo.sql';
copy($old$new) or die("Unable to copy $old to $new."); 
  #2 (permalink)  
Antiguo 26/04/2011, 11:17
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: funcion copy

editando....
  #3 (permalink)  
Antiguo 26/04/2011, 11:19
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: funcion copy

Fíjate que tengas permisos para acceder a los directorios.
Una alternativa es usar comandos, con exec.
O bien, una rutina que lea el archivo original (puede hacerlo con file_get_contents) y lo escriba en el archivo destino.
  #4 (permalink)  
Antiguo 26/04/2011, 11:21
Avatar de saseisa  
Fecha de Ingreso: agosto-2006
Mensajes: 329
Antigüedad: 17 años, 8 meses
Puntos: 9
Respuesta: funcion copy

yo como lo hago es usando comando de linux

Código:
shell_exec("mv $origen $destino");
ya que igual como a ti me hacia lo mismo espero te funcione
  #5 (permalink)  
Antiguo 26/04/2011, 11:22
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: funcion copy

Si estas generando el archivo sql con PHP asegúrate de cerrarlo antes de copiarlo.
  #6 (permalink)  
Antiguo 26/04/2011, 15:40
 
Fecha de Ingreso: febrero-2009
Mensajes: 199
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: funcion copy

Cita:
Iniciado por stramin Ver Mensaje
Si estas generando el archivo sql con PHP asegúrate de cerrarlo antes de copiarlo.
amigo disculpa como hago para cerrar el archivo si lo hago desde php

asi le meto el contenido

Código PHP:
file_put_contents($archivo$pasFILE_APPEND); 
Pero nunca lo cierro.
  #7 (permalink)  
Antiguo 26/04/2011, 15:51
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: funcion copy

no te preocupes, si estas usando file_put_contents no necesitas cerrarlo ya que esa instrucción la cierra inmediatamente tras abrirla y escribirla, de lo que SI debes preocuparte es de estar usando la versión actualizada de PHP5 ya que esa instrucción no sirve en los anteriores.

si no es así te recomiendo hacerlo a la antigua:

fopen(): abre el archivo.
fwrite():escribe en el archivo abierto.
fclose(): cierra el archivo abierto.
  #8 (permalink)  
Antiguo 26/04/2011, 15:57
 
Fecha de Ingreso: febrero-2009
Mensajes: 199
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: funcion copy

Código PHP:
file_put_contents($archivo$pasFILE_APPEND); 
Si funciona todo lo que guardo en ella lo hace, el error que tengo es al momento de copiar todo el contenido del archivo que cree, lo hize con un archivo nuevo que nu fue usado por
Código PHP:
file_put_contents($archivo$pasFILE_APPEND); 
y tampoco entonces deduje que no es problema al cerrar el archivo...
  #9 (permalink)  
Antiguo 27/04/2011, 07:28
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: funcion copy

sabes que he estado buscando solución a tu problema y no he visto conflictos de ese tipo ni siquiera en el manual de php...

¿podrías poner el código completo donde aparece tanto la funcion copy como file_put_contents?

ya que no se me ocurre nada mas...

Etiquetas: copy, funcion
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 21:08.