haveria algum problema de enviar um parâmetro na url? e quando chegar em /listar-cursos ser verificado para exibir ou não uma mensagem?
header('Location: /listar-cursos?inclusao=1', true, 302);
onde poderia ser enviado 1 para que em ** /listar-cursos** seja exibido uma mensagem de "curso cadastrado com sucesso", e 2 seria "falha ao cadastrar curso, tente novamente mais tarde"
$result = $this->entityManager->flush();
if($result){
header('Location: /listar-cursos?inclusao=1');
} else {
header('Location: /listar-cursos?inclusao=2');
}
na exibição: (no exemplo abaixo estaria dentro do html, mas poderia ser passado attravés do controller também, para não misturar, respeitando MVC
<!--ALERTA DE atualização-->
<?php if(isset($_GET['inclusao']) && $_GET['inclusao']== 1){?>
<div class="bg-success pt-2 text-white d-flex justify-content-center">
<h5>Curso cadastrado com sucesso!</h5>
</div>
<?php } ?>
<!---------------------->
ou
<!--ALERTA DE atualização-->
<?php if(isset($_GET['inclusao']) && $_GET['inclusao']== 2){?>
<div class="bg-danger pt-2 text-white d-flex justify-content-center">
<h5>Falha ao cadastrar curso, tente novamente mais tarde!</h5>
</div>
<?php } ?>
<!---------------------->