Foros del Web » Programando para Internet » PHP »

Problemas al copiar archivos

Estas en el tema de Problemas al copiar archivos en el foro de PHP en Foros del Web. Que tal , bueno antes que nada soy nuevo en este sitio y la verdad es que me ah ayudado infinidad de veces en lo ...
  #1 (permalink)  
Antiguo 04/09/2011, 14:46
 
Fecha de Ingreso: septiembre-2011
Mensajes: 34
Antigüedad: 12 años, 8 meses
Puntos: 1
Problemas al copiar archivos

Que tal , bueno antes que nada soy nuevo en este sitio y la verdad es que me ah ayudado infinidad de veces en lo que serían mis dudas en php, pero bueno hoy me surgió una nueva y no encuentro respuesta ni aquí ni allá. Bien espero me puedan contestar.

Primeramente tengo un formulario con los datos necesarios :
HTML :

Código:
<form action="procesa.php" method="post" name="form">
<input type="text" name="title_post" value="titulo de tu post">
            <input type="submit" value="postear!">
Bien, el problema surge en procesa.php, primero creamos un directorio aleatorio :
$rca = rand(0,9999);
mkdir("$rca");
Todo bien, me lo crea , tengo permisos...
después quiero que tome los datos de "title_post" con:
$post=$_POST["title_post"];
Por último quiero que cree un archivo nuevo y que pegue los datos recogidos de "title_post" como se ve :
$fh = fopen("post.html","w"); //creamos archivo .html
fwrite($fh,$post); //pegamos el contenido de $post en el archivo post.html
fclose($fh); //cerramos
if(copy('$fh','../$rca/')); //copiamos el archivo creado a la carpeta anteriormente generada aleatoriamente.
echo "Tu post ah sido copiado a .$rca/$fh.";

Pero me da el siguiente error :
Warning: copy($fh) [function.copy]: failed to open stream: No such file or directory in
La verdad no sé que eh hecho mal, soy prácticamente nuevo en PHP, y bueno si alquién es tan amable podría decirme mi error?Gracias de antemano.
  #2 (permalink)  
Antiguo 04/09/2011, 14:49
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Problemas al copiar archivos

Tienes que copiar es el archivo post.html y colocar la carpeta donde lo vas a copiar. Obviamente esta carpeta tiene que existir, no basta con esto

Código PHP:
Ver original
  1. if(copy('$fh','../$rca/'));

y te haz puesto a pensar ¿Que pasa si el número generado (carpeta) ya existe?
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 04/09/2011, 15:02
 
Fecha de Ingreso: septiembre-2011
Mensajes: 34
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Problemas al copiar archivos

Cita:
Iniciado por andresdzphp Ver Mensaje
Tienes que copiar es el archivo post.html y colocar la carpeta donde lo vas a copiar. Obviamente esta carpeta tiene que existir, no basta con esto

Código PHP:
Ver original
  1. if(copy('$fh','../$rca/'));

y te haz puesto a pensar ¿Que pasa si el número generado (carpeta) ya existe?
Hey muchas gracias por contestar, son rápidos, bien por una parte ya se debió de haber creado la carpeta aleatoria con :

Código:
  $rca = rand(0,9999);
Y despúes pretendo copiar el archivo a la carpeta generada con:
Código:
if(copy('$fh','../$rca/'));
La verdad no veo problemas, nosé si puedas ayudarme dandome un ejemplo de cómo crear archivos html, pegando en el mismo los datos recogidos de
Código:
$post=$_POST["title_post"];
y copiar el archivo generado a la carpeta anteriormente generada! GRACIAS
  #4 (permalink)  
Antiguo 04/09/2011, 15:06
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Problemas al copiar archivos

Volvemos aquí

if(copy('$fh','../$rca/'));

revisa la función copy:

http://php.net/manual/es/function.copy.php

Además tienes las variables entre comillas sencillas y nunca te va a funcionar.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #5 (permalink)  
Antiguo 04/09/2011, 15:30
 
Fecha de Ingreso: septiembre-2011
Mensajes: 34
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Problemas al copiar archivos

Cita:
Iniciado por andresdzphp Ver Mensaje
Volvemos aquí

if(copy('$fh','../$rca/'));

revisa la función copy:

[url]http://php.net/manual/es/function.copy.php[/url]

Además tienes las variables entre comillas sencillas y nunca te va a funcionar.
Hola, bueno ya me eh releido el link que me diste, no veo error alguno, ví que no se debía utilizar comillas simples para emplear variables en esta función, las eh retirado y ahora me marca el error. : Parse error: syntax error, unexpected ';' in on line 17.

Linea 17 :
Código PHP:
(copy($fh$rca); 
Realmente lo que quiero hacer es simple, un formulario en php, llenar texto en <text tarea>, luego procesarlo con procesa.php (se realiza bien la conexión) luego crear un directorio aleatorio, crear un nuevo archivo html, en él pegar lo escrito en <text tarea> y por último mover ese archivo recién creado a la carpeta aleatoria anteriormente creada. Soy un nabo en PHP.
  #6 (permalink)  
Antiguo 04/09/2011, 15:38
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Problemas al copiar archivos

No lleva paréntesis al principio:

copy($fh, $rca);

Además de esto $fh es de tipo resource y la función copy como claramente dice en el manual necesita la ruta del archivo post.html y el destino. Debe existir este archivo o sino te va a dar error.

Sería más o menos

copy('post.html', $rca . '/post.html')

dependiendo de como tengas los directorios. Con la función fopen (W) estas abriendo el archivo para sólo escritura, si no existe te va a dar error tendrías que agregarle W+
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #7 (permalink)  
Antiguo 04/09/2011, 15:51
 
Fecha de Ingreso: septiembre-2011
Mensajes: 34
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Problemas al copiar archivos

Cita:
Iniciado por andresdzphp Ver Mensaje
No lleva paréntesis al principio:

copy($fh, $rca);

Además de esto $fh es de tipo resource y la función copy como claramente dice en el manual necesita la ruta del archivo post.html y el destino. Debe existir este archivo o sino te va a dar error.

Sería más o menos

copy('post.html', $rca . '/post.html')

dependiendo de como tengas los directorios. Con la función fopen (W) estas abriendo el archivo para sólo escritura, si no existe te va a dar error tendrías que agregarle W+
WOOOW! muchisimas gracias no tengo palabras para agradecerte! la verdad estaba estancado y no podía salir, ahora funciona perfectamente! de verdad muchisimas gracias, me estaba partiendo la cabeza pensando cómo hacerlo, lo encontré pero no sabía como aplicarlo y ahora me das la respuesta GRACIAS! em... soy nuevo, cómo doy el tema por cerrado? gracias. :D

Etiquetas: asdsad, copiararchivos, problemas1
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:26.