Yo uso este pero necesitas que el servidor tenga el Register_globals on
Upload.php
<?
$sizekb = 0.0 ;
$sizemb = 0.0 ;
$dir=opendir('.');
while ($file = readdir($dir))
{
if($file != "upload.php" AND $file != ".estilo.css" AND $file != "." AND $file != "..") {
{
if((filesize($file) < 1024) AND (filesize($file) > 1)){ $sizekb = filesize($file);
echo"<a href=\"$file\"> $file</a> @ $sizekb Bytes<br>"; }
if((filesize($file) > 1024) AND (filesize($file) < 1024000)){ $sizekb = round(filesize($file)/1024,2);
echo"<a href=\"$file\"> $file</a> @ $sizekb Kb<br>"; }
if(filesize($file) > 1024000){ $sizekb = round(filesize($file)/1024000,2);
echo"<a href=\"$file\"> $file</a> @ $sizekb Mb<br>"; }
}
}
}
closedir($dir) ;
?>
upl2.php
<?
$extensiones=array("html","exe","php");
$path="C:\AppServ\www\whose\uploads";
$nombre=$HTTP_POST_FILES['archivo']['name'];
$tamanio=$HTTP_POST_FILES['archivo']['size'];
$tipo=$HTTP_POST_FILES['archivo']['type'];
$var = explode(".","$nombre");
$num = count($extensiones);
$valor = $num-1;
for($i=0; $i<=$valor; $i++) {
if($extensiones[$i] == $var[1]) {
echo "Tipo de Archivo no admitido";
exit;
}
}
if (is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name']))
{
copy($HTTP_POST_FILES['archivo']['tmp_name'], "$path/$nombre");
echo "<span class=\"style5\">";
echo "Archivo subido correctamente<br><br>";
echo "Direccion del archivo: <a href=\"http://www.whose-gfx.com/uploads/$nombre\" target=\"blank_\">www.whose-gfx.com/uploads/$nombre</a><br>";
echo "Nombre: $nombre<br>";
echo "Tamaño: $tamanio Bytes<br>";
echo "Tipo: $tipo";
echo "</span>";
}
else { echo "Error al subir el archivo"; }
?>
El script es de Akuatik pero yo le modifique algunas cosas.