Problemas con carga de im谩genes con move_uploaded_file

margon
28 de Abril del 2006
Tengo problemas con la carga de im谩genes por POST (con move_uploaded_file).

El error que aparece es

Possible file upload attack!
Debugging info:Array
(
[archivousuario] => Array
(
[name] => Array
(
[0] => imagen.jpg
)

[type] => Array
(
[0] => image/pjpeg
)

[tmp_name] => Array
(
[0] => /tmp/phpE3DJai
)

[error] => Array
(
[0] => 0
)

[size] => Array
(
[0] => 12360
)

)

(Estoy manejando un array de cuatro im谩genes y s贸lo indiqu茅 el error que aparece para una de ellas).

Al parecer es la carpeta, el administrador del servidor (en linux debian) me indic贸 mi ruta:

/home1/Server/system/imgs

aunque creemos que es suficiente indicar s贸lo el nombre de la carpeta donde se cargan las im谩genes, esto es: imgs.

He hecho pruebas con ambas opciones, con la ruta completa o s贸lo el nombre de la carpeta, pero no funciona.

En un servidor Windows funciona perfectamente el c贸digo, por lo que este no puede ser problema (por ejemplo C:/www/system/imgs/).

Tampoco es cuesti贸n de permisos porque yo cree la carpeta. Alguna sugerencia?

Gracias!

Ismael Martinez May
28 de Abril del 2006
Amigo si me pudieses mostrar el codigo con el que mueves la imagen te podria ayudar mas

margon
28 de Abril del 2006
Gracias. Aqu铆 est谩 el c贸digo, es parte de la funci贸n que carga las im谩genes y las guarda.

Soy amiga, no amigo =)


$directorio = \'imgs_cargadas\';

for ($i = 0; $i < 4 ; $i++){
$archivo_a_cargar = $directorio . basename($NombreArchivos[$i]);
//Comprueba el tama帽o del archivo
if($TamArchivos[$i] <= 40000){
//Si no present贸 problema al cargar
if (move_uploaded_file($NombreTempArchivos[$i], $archivo_a_cargar)) {
echo "El archivo ".$NombreArchivos[$i]." es v谩lido y se carg贸 correctamente<br>";
//Si se gener贸 alg煤n error al cargar
} else {
if($NombreArchivos[$i] == "")
echo "No carg贸 la fotograf铆a ".$Fotografias[$i];
else{
echo "Hubo un error con el archivo".$NombreArchivos[$i]." c谩rguelo nuevamente";
echo $directorio.\'/\'.$_FILES[\'archivousuario\'][\'name\'][$i];
//Informaci贸n del error
echo "<br>Possible file upload attack!\n";
echo \'Debugging info:\';
print_r($_FILES);
}
}
} //Si el tama帽o del archivo es mayor a 40 KB
else
echo "El archivo ".$NombreArchivos[$i]." tiene un tama帽o mayor al indicado (40 KB), carguelo nuevamente<br>";
}


Gracias!