Bonjour,

Voila je rencontre un petit problème avec mon code.

Enfaite, j'ai une fenêtre modale qui liste tous mes liens (c'est pour un comité sportif), j'aimerais qu'a chaque fois que je clic sur un lien, la page redirect.php redirige automatiquement vers le liens.
Je dois sûrement mal m'exprimer, vous aller comprendre avec mon code.

Message d'erreur :

Parse error: syntax error, unexpected ''1'' (T_CONSTANT_ENCAPSED_STRING) in C:\xampp\htdocs\Petanque\redirect.php on line 9

redirect.php

<?php
// programme de traitements et gestion des liens vers les pages du site.
// exemple = go.php?id=5  (dans un range de 0 à 40)

$options = array('options' => array('min_range' => 1, 'max_range' => 33));
$id = filter_input(INPUT_GET , 'id', FILTER_VALIDATE_INT, $options);
if (isset($id) && $id !== false) {
    switch ($id) {
        case '1': header('Location: /documents-utilitaire/'); break; 
        case '2': header('Location: /pv-de-reunion-comite-departemental/'); break;
        case '3': header('Location: /modalite-inscription-championnat-departemental'); break;
        case '4': header('Location: /championnat-departemental-tete-a-tete-feminin/'); break;
        case '5': header('Location: /championnat-departemental-tete-a-tete-masculin/'); break;
        case '6': header('Location: /championnat-departemental-doublette-feminin/'); break;
        case '7': header('Location: /championnat-departemental-doublette-masculin/'); break;
        case '8': header('Location: /championnat-departemental-triplette-masculin/'); break;
        case '9': header('Location: /championnat-departemental-triplette-feminin/'); break;
        case '10': header('Location: /championnat-departemental-triplette-promo/'); break;
        case '11': header('Location: /championnat-departemental-triplette-veteran/'); break;
        case '12': header('Location: /championnat-departemental-triplette-minim/'); break;
        case '13': header('Location: /championnat-departemental-triplette-cadet/'); break;
        case '14': header('Location: /championnat-departemental-triplette-junior/'); break;
        case '15': header('Location: /championnat-departemental-triplette-jeux-provencal/'); break;
        case '16': header('Location: /championnat-departemental-doublette-jeux-provencal/'); break;
        case '17': header('Location: /championnat-des-clubs-departemental-division-1/'); break;
        case '18': header('Location: /championnat-des-clubs-departemental-division-2/'); break;
        case '19': header('Location: /championnat-des-clubs-departemental-division-3/'); break;
        case '20': header('Location: /championnat-des-clubs-departemental-feminin/'); break;
        case '21': header('Location: /championnat-des-clubs-departemental-veteran-division-1/'); break;
        case '22': header('Location: /championnat-des-clubs-departemental-veteran-division-2/'); break;
        case '23': header('Location: /championnat-des-clubs-departemental-jeux-provencal/'); break;
        case '24': header('Location: /championnat-des-clubs-departemental-benjamin-minim/'); break;
        case '25': header('Location: /championnat-des-clubs-departemental-cadet-junior/'); break;
        case '26': header('Location: /championnat-des-clubs-regional/'); break;
        case '27': header('Location: /championnat-national-des-clubs-division-3/'); break;
        case '28': header('Location: /calendrier-des-concours-departementaux/'); break;
        case '29': header('Location: /calendrier-des-concours-regionaux/'); break;
        case '30': header('Location: /coupe-de-lariege/'); break;
        case '31': header('Location: /coupe-de-lariege-division-1/'); break;
        case '32': header('Location: /coupe-de-lariege-division-2/'); break;
        case '33': header('Location: /educateur/'); break;
        default: header('Location: /accueil/'); break;
    }
}else {
    header('Location: erreur.php?page=erreur');
    exit();
}

Je vous remercie de votre attention,

Guillaume.

12 réponses


Bonsoir,
Si tu enlèves les ' dans le switch, as-tu la même erreur ?
A quoi corresponds les lignes 7-8-9 ?

Playzer
Auteur

Oui, j'ai exactement la même

A quoi corresponds les lignes 7-8-9 ?

Playzer
Auteur

Du if jusqu'au premier case

En me relisant, je pense ne pas avoir été clair.
As-tu fais ceci :

case 1 : header('Location: /documents-utilitaire/'); break; 
Playzer
Auteur

Oui, que je fasse comme ou comme c'était avant, c'est pareil, toujours même erreur

Que donnes un var_dump($id); en le faisant juste avant le if ?

Salut,

Que donnes un var_dump($id); en le faisant juste avant le if ?

Si y'a une syntax error, il ne va pas exécuter le code.

Ensuite, @Carouge10 a raison : tu compares un entier (l'id) avec des strings. Il faut comparer int à int. Donc, en remplacant le switch par un var_dump, ça donne quoi ?

Playzer
Auteur
Parse error: syntax error, unexpected 1 (T_CONSTANT_ENCAPSED_STRING) in C:\xampp\htdocs\Petanque\redirect.php on line 9

Sa se passe au niveau du case 1

Tu utilises quel version de PHP ? Je n'arrive pas à reproduire ton erreur. :|

Playzer
Auteur

J'utilise Php 7.0.8

hello,
si le var_dump coince, tu pourrais commenter le if et envoyer le résultat quand même ?