Cita: Me gustaría hacerlo de tal manera que el formulario genere 3 archivos temporales y mostrarlos con un icono de descarga, y al cerrar la sessión que se borren. No se como crear estos archivos y hacer que se borren posteriormente automaticamente. He leido que puedo hacer un fopen(), pero al hacer un fclose() se borra el archivo!!!
También puedes generar tres archivos en el servidor, generar un .ZIP de esos tres archivos y poner un link para descarga .. pero el borrado de esos archivos no será al instante sino por un proceso de borrado de archivos que se ejecute a intervalos de tiempo y bajo cierto criterio (tal vez fecha de creación del archivo).
El tema de control de esa acción por cerrar la sesión .. Si tu tienes un "logout" en tu aplicación y tus usuarios salen por ahí (por la "puerta") .. ahí si que puedes borrar (unlink()) tus archivos como quieras en ese instante, pero si te salen por "otro lado": cierran su ventana del navegador .. etc .. Ahí no tienes ningún control para ejecutar tu acción de borrado del archivo.
Creo que lo más sano si tienes N archivos a descargar es que los envies a descargar "en línea" (al vuelo) como ya lo haces con UNO actuamlente .. pero ahora genera un .ZIP (más que nada por el tema de que quedarían "compactos" más que del hecho de lo comprimido que queden ...) y lo entregas a descargar simplemente.
Un saludo,