se debe a que el código que conseguiste está pensado para que funcione con
registers globals,
funcionalidad depreciada en futuras versiones de php por motivos de seguridad.
lo único que tienes que hacer es especificar explícitamente el origen de
id:
Código PHP:
Ver original<?php
$ruta = "documentos/";
$enlace = $ruta."/".$_GET['id']; //id a través de GET
header ("Content-Disposition: attachment; filename=".$id."\n\n"); header ("Content-Type: application/octet-stream"); ?>