Só não entendi uma coisa, você faz uma verificação se a informação existe pra poder abrir o modal. Então não seria correto dizer que depois que existir todas as informações ele já poderia ser redirecionado? Não vejo a necessidade de verificar se o modal foi aberto, porque ele já tem que ter verificar isso para abrir o modal, certo?
O php é interpretado pelo servidor, então tudo que é em php é processado primeiro quase que junto com o banco de dados, existe uma diferença em alguns casos mas enfim, depois que tudo em php foi "compilado", ele envia tudo que for HTML, CSS, JavaScript para o navegador