Para que validey verifique que no sea un archivo rar modificas el codigo a los siguiente.
Código PHP:
<?php
define('MAX_FILE_SIZE', 10485760);
//$archivos_permitidos = array('application/pdf');
$archivos_no_permitidos = array('application/x-rar-compressed','application/octet-stream');
$OK = true;
if ( array_key_exists('enviado', $_POST)) {
echo "Este archivo es de ". ($_FILES['userfile']['size']/1054000) ." Mb. <br><br>";
var_dump($_FILES);
if($_FILES['userfile']['size'] > MAX_FILE_SIZE){
echo("El tamaño del archivo es demasiado grande. <br>");
} else {
$nombre_archivo = $_FILES['userfile']['name'];
$partes_nombre = explode('.', $nombre_archivo);
$extension = pathinfo($_FILES['userfile']['name'], PATHINFO_EXTENSION);
// verificar que solo se suban archivos permitidos
foreach ($archivos_no_permitidos as $key) {
if ($key == $_FILES['userfile']['type']) {
$OK = false; // como encontro un archivo permitido ya no es necesario preguntar por los demas y esta listo para subirse.
break;
}
}
if (!$OK) {
echo("La extensión del archivo no es válida. <br><br><table><tr><td>Solo se permiten archivos de 10 Mb máximo.</td></tr></table>");
} else {
move_uploaded_file($_FILES['userfile']['tmp_name'], "c:\\temp\\".$nombre_archivo);
}
}
}
else{
?>
<body>
<form action="" method="post" enctype="multipart/form-data" id="subirBID">
<p>
<input name="userfile" type="file">
</p>
<p>
<input type="submit" name="button" id="button" value="Subir Archivo">
</p>
<input type="hidden" name="enviado" value="subirBID">
</form>
<?php }?>
</body>