Código PHP:
Ver original<?php
if($_SERVER['REQUEST_METHOD'] == "POST"){
ese es exactamente el tipo de uso "peligroso" de extract que se debe evitar, un usuario malicioso puede añadir campos a tu formulario con el nombre y el valor que quiera, luego extract reemplazara las variables definidas actualmente por las nuevas ingresadas por el usuario malicioso.
Tal como esta el codigo es totalmente innesesario hacer uso de extract, pero en caso de necesitarlo, la forma segura seria:
para que el archivo se descargue con el nombre de usuario debes reemplazar "codigo.sql" por "nombre.sql" en el header, donde nombre es la variable que contiene el nombre la cual previamente tiene que "sanear" para que solo contenga caracteres validos.