si yo lo programe has de cuenta que hago lo siguiente. nada del otro mundo..
hago una simple consulta
$sql = "select * from upload_files order by id_upload_file";
$result = @mysql_query($sql,$connection);
E imprimo
<?
while($row = mysql_fetch_array($result)) {
?>
<tr>
<td><a href="upload_files/<? echo $row['nombre'] ?>"><? echo $row['nombre'] ?></a></td>
<td><? echo $row['comentario'] ?></td>
<td><? echo $row['fecha'] ?></td>
</tr>
<?
}
mysql_free_result($result);
?>
la variable $row['nombre'] es el nombre del archivo que se subio entonces solo le dan click a la liga y lñes baja el archivo como te comento si es un archivo echo en office 97, 2000, 2003 no hay problema pero si el archivo se hizo en office 2007 y ves que la extension termina con x como, docx, xlsx y pptx ahi cuando le doy al link me baja el nombre del archivo pero con extension zip...
Mira aqui te dejo el ejemplo subi el mismo archivo uno echo en office 2003 y otro en 2007 para que veas lo que hace..
http://arcangel.ecolonetworks.com/download_files2.php
Saludos...