[RESOLU] Problème avec la transmission de donnée d'une page à l'autre.

Eléphanteau du PHP | 47 Messages

03 déc. 2020, 11:12

Bonjour à tous,

J'ai bien compris les méthodes GET et POST, par contre j'ai un problème dont je ne trouve pas la solution. Je m'explique, j'ai un tableau de cours à la page une. L'étudiant choisi son cours et celui-ci le renvoi à la page deux grâce à une méthode GET. Voir code ci-dessous :
while($classes = $statement->fetch()){
                        echo'
                        <tr>
                        <td>'.$classes['days'].'</td>
                        <td> '.$classes['hours'].'</td>
                        if($classes['nbrstmax']==$classes['nbrstcp']){
                            echo'<td>Cours complet</td>
                            </tr>';
                            }else
                            {
                            echo'<td><a href="forminscription.php?cours='. $classes['id'] .'" class="choiceInscr">'.$classes['name'].'-'.$date=date('yy').'</a></td>
                            </tr>';
                        }
Dans la page deux, il y a un formulaire dans le quel je récupère la valeur de mon GET à savoir ici $_GET['cours'].
Mon problème est le suivant, quand je contrôle mon formulaire, si un champs est vide ou ne répond pas aux exigences de sécurité, je recharge ma page. Mais ma variable GET se vide et me retourne un massage d'erreur.

Du coup comment faire pour ne pas avoir ce message d'erreur. J'ai essayé avec une variable SESSION à la place de ma variable 'classe['id']', mais comme je suis dans une boucle while ma variable SESSION prend toujours la dernière valeur, idem avec un COOKIE.

Si quelqu'un pouvait me guider ce serait super sympa.

Merciiiiiiii

Eléphanteau du PHP | 47 Messages

03 déc. 2020, 11:24

ok, j'ai trouvé désolez j'ai tout simplement fait ceci au début de ma page deux.
if(!empty($_GET['cours'])){
    $_SESSION['cours']=$_GET['cours'];
}
Quand on débute en PHP, on a tendance à chercher trop loin. :wink: