Hola, ¿qué tal?
Mirad, estoy intentando hacer una función uploader para complementar a otra, pero me da un error... No sé cual ya que creo que todo esta bien declarado :/
$tamano = $_FILES["somename"]['size'];
$tipo = $_FILES["somename"]['type'];
$archivo = $_FILES["somename"]['name'];
$prefijo = substr(md5(uniqid(rand())),0,6);
$destino = "text/".$prefijo."_".$archivo;
/* linea 71 */ copy($_FILES['somename']['tmp_name'],$destino);
El error es este;
Warning: copy() [function.copy]: open_basedir restriction in effect. File() is not within the allowed path(s): (/home/:/usr/lib/php:/tmp) in /home/----/public_html/herramientas/crypter.php on line 71
:huh: HUH?
La carpeta existe? y la ruta es correcta? ademas en vez de copy probaste con la funcion move_uploaded_file ?
move_uploaded_file
http://php.net/manual/es/function.move-uploaded-file.php
Tambien se me hace que debe ser algo de linux, quizás alguien mas con experiencia en linux sepa.
Sí, la ruta existe y tiene los permisos suficientes... Y la ruta esta bien escrita basándonos desde la ruta que estamos.
Acabo de probar con move_uploaded_file y el interprete no me manda ningún error, solo que el archivo no se sube. Tal vez es porque estoy subiendo archivos desde linux?
No, no es por linux, es por que open_basedir añade una restricción, podes desactivarlo en tu httpd.conf cambiando el parametro a 'none'...
<Directory /home/----/public_html>
php_admin_value open_basedir none
</Directory>
open_basedir
http://www.php.net/manual/es/ini.core.php#ini.open-basedir
Conseguí hacerlo y nada, sigue sin subirse ningún archivo :/