Hola una pregunta hay alguna forma de subir un archivo al servidor y colocarlo en una carpeta especifica sin usar el nombre temporal, debido a que el servidor que uso tiene ciertas restricciones, lo cual no me deja tocar el temp.
Gracias.
| |||
Upload File Hola una pregunta hay alguna forma de subir un archivo al servidor y colocarlo en una carpeta especifica sin usar el nombre temporal, debido a que el servidor que uso tiene ciertas restricciones, lo cual no me deja tocar el temp. Gracias. |
| |||
nops no me funca este es el error que me tira Warning: move_uploaded_file(15-01-05_1840.jpg): failed to open stream: Permission denied in /home/promo2k3/public_html/subirformulario.php on line 9 Warning: move_uploaded_file(): Unable to move '/tmp/php5KhI69' to '15-01-05_1840.jpg' in /home/promo2k3/public_html/subirformulario.php on line 9 Warning: filemtime(): Stat failed for 15-01-05_1840.jpg (errno=2 - No such file or directory) in /home/promo2k3/public_html/subirformulario.php on line 11 Warning: touch(): open_basedir restriction in effect. File(/temp) is not within the allowed path(s): (/home/promo2k3:/usr/lib/php:/usr/local/lib/php:/tmp) in /home/promo2k3/public_html/subirformulario.php on line 11 |
| ||||
<input type="hidden" name="MAX_FILE_SIZE" value="1000"> ese valor es en bytes si no me equivoco, asi que el tamaño maximo de archivo es de 1kb, ponele un valor mas alto. y ademas, el directorio de upload tiene que tener permiso de escritura, hacele un chmod a 777 |
| ||||
Lo que hace ese script es primero subir el archivo a una carpeta temporal y posteriormente (si se subió) moverla a la carpeta final. Precisamente con is_uploaded_file($_FILES['userfile']['tmp_name'])) verificas que se haya subido a la carpeta temporal... ve que también le cambia el nombre al archivo en esa carpeta: ['archivo']['tmp_name']... vaya!... creo haber entendido que el problema precisamente era que no se podian subir archivos de este forma... Así que... la verdad dudo que puedas hacerlo... ![]() ![]() Suerte!, ojalá me equivoque. ![]() Edito: Si haces un phpinfo() ¿cómo esta el estado de file_uploads?
__________________ ٩(͡๏̯͡๏)۶ "100 años después, la revolución no es con armas, es intelectual y digital" Última edición por jam1138; 11/04/2005 a las 19:36 |
| |||
Según este error: Cita: Por restricción de esa directiva (open_basedir) tal vez por el uso de "safe_mode" no está permitido hacer "upload" de archivos (que ya parece que está configurado: upload_tmp_dir = /tmp ) en ese servidor ... Warning: touch(): open_basedir restriction in effect. File(/temp) is not within the allowed path(s): (/home/promo2k3:/usr/lib/php:/usr/local/lib/php:/tmp) in /home/promo2k3/public_html/subirformulario.php on line 11 Consulta a tu proveedor si no eres tu por esas restricciones .. en teoría deberían añadir a esa directiva (open_basedir) la ruta /tmp o la que definan para los "upload's" vía HTTP de PHP. Podrías probar también a "forzar" donde quieres que PHP suba los archivos temporales. Create una carptea sobre el public_html/ (para que quede fuera del alcance de una llamada por http:// (que es donde apunta el "document_root" de tu servidor HTTP normalmente). Por ejemplo "mis_uploads" Código PHP: Código PHP: |
| |||
En realidad, tambien estoy con el mismo problema, pero ahora a mi me sale el siguiente error aun cuando hice lo que dijiste en el anterior mensaje a este: Warning: copy(): open_basedir restriction in effect. File(/home/intimat/public_html/attachments/OlgaSoache-5383.jpg) is not within the allowed path(s): (/home/intimat/:/usr/lib/php:/usr/local/lib/php:/tmp) in /home2/intimat/public_html/site/job/index.php on line 80 Creo que no podré hacer nada con upload images, como quien dice hacerlo en la misma carpeta....
__________________ Ahora T4X es WinGFX!!!!! |
| |||
Creo que con el anterior mensaje, si se fijan aparece una ruta distinta a la otra, el archivo según la variable $_SERVER['DOCUMENT_ROOT'] me devuelve /home/intimat/public_html/ Pero al procesar el script aparece como error de variable $_SERVER['DOCUMENT_ROOT'] es /home2/intimat/public_html. Ahora si quedé loco....
__________________ Ahora T4X es WinGFX!!!!! |