
Forzar descarga de archivos en PHP
PHP
Publicado el 29 de Marzo del 2007 por Administrador
6.780 visualizaciones desde el 29 de Marzo del 2007
Un sencillo código útil, que nos servirá cuando necesitamos que nuestros visitantes descarguen algún archivo .doc desde nuestra web.
Forma parte de Gamarod
Si alguno de los archivos de descarga no funciona, comentanos aquí el error.
Comentarios... (1)
la idea es contar la cantidad de descargas de un archivo en php y registrarlo en una base de datos.
te muestro el codigo que uso:
en una pagina pongo esto:
echo "<a href=bajando.php?codigo=".$fila['archivo'].">Descargar</a>";
es el link para hacer la descarga y en la pagina linkeada pongo esto:
<?php
header ("Content-Disposition: attachment; filename=".$_REQUEST['codigo']);
header ("Content-Type: application/octet-stream");
header ("Content-Length: ".filesize($_REQUEST['codigo']));
@readfile($_REQUEST['codigo']);
require ("conexion.php");
$idcone= conexion();
$actualizar= mysql_query("update imagenesflores
set voto= voto+1
where archivo='$_REQUEST[codigo]'",$idcone)
or die("error en la actualizacion de imagenesflores" . mysql_error());
?>
se hace la descarga de un archivo y se inserta en la base de datos el valor.
el problema es que cuando se baja el archivo a la cpu del usuario, el archivo comprimido(.rar) no se lo puede abrir ,es como si estuviese el archivo con formato comprimido pero en su interior no hay nada.
no se si es un problema de los header. bueno les agradecere la respuesta.