Comunidad de diseño web y desarrollo en internet online

Subir archivo a carpeta dinamica ActionScript PHP

Citar            
MensajeEscrito el 02 Sep 2008 12:51 pm
Buenas

El caso es que quiero subir un archivo a una carpeta en el servidor y esta carpeta sera diferente para cada usuario. El nombre de la carpeta se encuentra almacenado en una variable de sesión.
En principio supuse que no habría ningun problema pero me estoy volviendo loco porque mas que miro no encuentro el fallo.
Si alguien me pudiese ayudar...

ActionScript

Código :

private var cvUploader:FileReference = new FileReference();
...
var cvUploaderPHP:URLRequest = new URLRequest("./User/php/uploadCV.php");
cvUploader.upload(cvUploaderPHP,'cv',true);


PHP

Código :

$folder = "./folder/";
session_start();
$id = $_SESSION['username'];
$folder .= $id."/";
move_uploaded_file($HTTP_POST_FILES['cv']['tmp_name'], $folder.$HTTP_POST_FILES['cv']['tmp_name']);


Muchas Gracias

Por Deschain

20 de clabLevel



Genero:Masculino  

España

firefox
Citar            
MensajeEscrito el 02 Sep 2008 03:23 pm
el segundo parametro de move_uploaded_file, no teberia de ser $HTTP_POST_FILES['cv']['name']?

Por master_of_puppetz

Claber

2483 de clabLevel

7 tutoriales
3 articulos

Genero:Masculino   Premio_Secretos

WebDev (Flex + PHP + JS)

safari
Citar            
MensajeEscrito el 02 Sep 2008 04:27 pm

master_of_puppetz escribió:

el segundo parametro de move_uploaded_file, no teberia de ser $HTTP_POST_FILES['cv']['name']?


Tiene que ser $_FILES['cv']['name'] pero el problema es que no mete el archivo en la carpeta especificada por la variable de la sesión y lo mas curioso es que me lo deja en el directorio padre es decir que si deberia meterelo en /folder/NombreDeLaCarpetaAlmacenadoEnLaSesion/ lo hace en /folder/

Otro tema es que el archivo deberia ser renombrado, pero creo que eso tampoco supone mucho esfuerzo

Por Deschain

20 de clabLevel



Genero:Masculino  

España

firefox
Citar            
MensajeEscrito el 02 Sep 2008 04:32 pm
ok, pues tu codigo se ve bien, yo alguna vez tuve problemas asi con las sesiones por el swf (o al menos esa fue mi conclusion), lo que podrias hacer es mandar el ID de la sesion al swf y luego cuando se haga el upload, volverlo a mandar a PHP.

Por master_of_puppetz

Claber

2483 de clabLevel

7 tutoriales
3 articulos

Genero:Masculino   Premio_Secretos

WebDev (Flex + PHP + JS)

safari
Citar            
MensajeEscrito el 04 Sep 2008 07:50 pm
Al final he tenido la iluminación en forma de chapuza (o por lo menos me lo parece a mi :( ).

El caso es que la solución ha sido que daba igual que el URLrequest que es un archivo PHP no cogiese bien el dato de la sesión ya que he cambiado el código para que lo haga a una carpeta temporal que es fija (ej. /temp). Despues, he añadido un listener al evento COMPLETE del fileReference que lo que hace es enviar un HTTPservice (otro PHP) el cual se encargara de coger el archivo subido a la carpeta temporal, moverlo a la carpeta adecuada, y eliminar el archivo de la carpeta temporal (el nombre del archivo y el tipo se lo envio por POST al servicio).
Y con esto todo funciona, por ahora...

Lo que no termino de entender es porque en un URLrequest no se puede conseguir una variable de sesión y si con un HTTPservice...

En fin cosas de la inexperiencia

Muchas gracias.

P.D. Los nombres que hacen referencia al código puede que no estén bien ya que no tengo el código ahora disponible, también esta es la razón porque no he publicado el código

Por Deschain

20 de clabLevel



Genero:Masculino  

España

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.