¿Cómo preprocesar un archivo CSV local antes de cargarlo en un servidor?

Estoy tratando de configurar una página web donde los usuarios de confianza puedan cargar archivos CSV locales que serán analizados, validados, revisados ​​por los usuarios y luego insertados en varias tablas en una base de datos MySQL.

El resto del sitio está escrito usando PHP y jQuery. Sé cómo leer un archivo CSV en PHP y generar una consulta. El problema es que la validación y el análisis del archivo son interactivos: el usuario necesita que se le solicite información diversa sobre los datos, haga coincidir las columnas del archivo con los campos de la base de datos y tenga la oportunidad de revisar y actualizar sus datos. Responde hasta que estén seguros de que todo es correcto.

Parece que los años 90 recargan toda la página cada vez que el usuario cambia algo, así que asumí que AJAX sería la forma de hacerlo del lado del cliente, pero parece que la apertura de archivos locales está específicamente prohibida por los navegadores por "razones de seguridad". .

Mi pregunta es:

¿Existe un patrón generalmente aceptado para permitir que un usuario tome decisiones de manera segura y eficiente según el contenido de un archivo antes de cargarlo en el servidor? ¿O la gente realmente simplemente envía docenas de solicitudes POST en tales situaciones?

Por cierto, no utilizamos Windows ni nada de código cerrado, por lo que, lamentablemente, la solución no puede basarse en Internet Explorer o ActiveX.

Gracias.

Respuestas a la pregunta(4)

Su respuesta a la pregunta