Ver Mensaje Individual
  #4 (permalink)  
Antiguo 06/05/2005, 09:09
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Te dice "Array" por qué esto:
$HTTP_POST_FILES['userfile'];

entrega un array con unos valores determinados:
$HTTP_POST_FILES['userfile']['tmp_name'] --> El nombre del archivo temporal que crea PHP al subir el archivo.
$HTTP_POST_FILES['userfile']['name'] ---> el nombre del archivo original (sin ruta alguna del "cliente")

Y otras más como 'size' y 'type' que definen tamaño del archivo y formato MIME del archivo.

De hecho ya lo estás usando ....

Por lo demás es recomendable que NO uses $HTTP_POST_FILES .. usa: $_FILES (como array superglobal que es .. te evitará problemas en configuraciónes de PHP con register_globals a OFF y además ganaras en seguridad).

Los otros problemas:
Código PHP:
$sql="INSERT INTO rutas (fecha,nombre,tamaño)";
$sql.="VALUES (NOW(),'$nombre_archivo','$tamano_archivo')"
eso así sólo no funciona .. por qué no usas la función para ejecutar esa consulta SQL que ahí haces. Te falta:
Código PHP:
mysql_query($sql) or die(mysql_error()); 
También te falta mover el archivo desde el directorio temporal que PHP lo deja al subir el archivo a su destino definitivo .. NO sé si omitistes esa párte de código o no .. pero en algún sitio debes hacer:

Código PHP:
move_uploaded_file($_FILES['userfile']['tmp_name'],".archivos/".$_FILES['userfile]['name]); 
(suponiendo que tengas creado bajo el directorio que ejecutas ese script un directorio "archivos" y que tenga permisos de escritura suficientes (0766 o simlar)

Cuando tengas tu dato ya en tu BD .. para recuperar el archivo tan sólo debes hacer tu consulta SQL a tu BD -> obtener el registro que busques bajo el criterio de tu consulta SQL que uses y de ahí montar mínimo un link tipo:
Código PHP:
<a href="archivos/<? echo $row['archivo']; ?>">bajar $row['archivo']</a>
Un saludo,