Voici ce que tu peux tester:
- Enlève la condition $page > 1 :
if (isset($_GET['page'])) {
$this->app->redirect($this->router->routeGenerate('viewtopic', ['id' => $match['params']['id'] .'?page='.$page.'#rep-' . $lastid]));
}
-
Check la variable $page et assures toi qu'elle contienne la bonne valeur après l'ajout d'une réponse. Assure-toi qu'elle est mise à jour conformément à la pagination de ton forum.
-
Déplace la redirection avant le message flash
Dans ton code, tu rediriges après avoir défini le message flash. Inverse l'ordre pour éviter les interférences.
if (isset($_GET['page'])) {
$this->app->redirect($this->router->routeGenerate('viewtopic', ['id' => $match['params']['id'] .'?page='.$page.'#rep-' . $lastid]));
}
$this->app->setFlash('Votre réponse a bien été postée');