En principio .. la cabecera HTTP: "Content-Disposition" debe ser "attachment"
Código PHP:
header("Content-Disposition: attachment; filename=nombre_archivo_sin_ruta_solo_nombre");
más info . ejemplos y comentarios de los usuarios en:
www.php.net/header
Preta atención a los comentarios sobre los problemas con diferentes navegadores.
Un saludo,