la intención es que le den un vistaso y me hagan algún comentario si es una buena forma de controlar este tema.
Código PHP:
$tipoArray =array("application/acad","image/jpeg","image/gif","image/pjpeg","image/bmp","image/png",
"image/x-png","image/x-windows-bmp","application/msword","application/vnd.ms-excel","application/vnd.ms-powerpoint","application/pdf","image/x-dwg");
$tipo = $_FILES['file']['type']; // reconoce el tipo de archivo que suben
function VerificarTipo($tipo,$tipoArray){
$count = count($tipoArray);
for($i=0;$i<$count;$i++){
if($tipo==$tipoArray[$i]){
return true;
break;
}
}
header("location: error_upload.php?error=$tipo");
exit;
}
if (is_uploaded_file($_FILES['file']['tmp_name'])) {
if(VerificarTipo($tipo,$tipoArray))
{
move_uploaded_file($_FILES['file']['tmp_name'], $folder.$_FILES['file']['name'] ); // mueve a la carpeta
}else{
header("location: error_upload.php"); // no coincide el tipo de file a subir
exit;
}
} else {
echo "Posible ataque de carga de archivo: ";
echo "nombre de archivo '". $_FILES['file']['tmp_name'] . "'.";
exit;
}