Je suis entrain de réaliser un site et dedans j'ai un formulaire pour mettre des données à jours. Le problème c'est que la requête ne veut pas s'éxécuter pour mettre à jours l'enregistrement.

voici l'erreur:
Notice: Undefined variable: sejour in C:\wamp\www\site\sejourModCtlUpdate.php on line 66
script modif: script qui affiche la liste des pays puis un tableua avec les sejour correpondant au pays:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<?php
    session_start();
    if (isset($_SESSION["pseudo"]) == false)
    {
        header("Location:index.php");
}
?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <meta http-equiv="Content-Language" content="fr" />
    <link rel="stylesheet" href="css/stylesMiseEnPage.css" type="text/css" />
    <title>Formulaire de Modification de séjour</title>
    <script></script>
</head>
<?php
include("includes/accesBDD.php");
include("includes/utilitaires.php");
?>
<body>
    <?php
    // début de page et bandeau
    include("includes/debutPageEtBandeau.php");
    // ajout menu
    include("includes/menuAdmin.php");
    // ajout actualités
    include("includes/actualite.php");
    ?>
 
    <div id="corps">
        <h1 class="titrecentre">Modification des caractéristiques des séjours</h1>
        <?php
        if(count($_POST)>0)
        {
            // récupération du pays sélectionné
            $pays = $_POST["pays"];
        }
        else
        {
            // cas de l'appel du script à partir du menu
            $pays="";
        }
        ?>
 
        <form id="sejourajout" action="" method="POST">
            <table class="centre">
                <tr>
                    <td>Sélectionnez le pays pour lequel vous souhaitez visualiser les séjours : </td>
                    <td>
                        <select name="pays" id="pays" onchange="this.form.submit();">
                            <option value="">Choisissez le pays</option>
                            <?php
                            $requete = "select distinct pays from sejour";
                            $result = $db->query($requete);
                            $ligne = $result->fetch_object();
 
                            while($ligne != false)
                            {
                                $cle = $ligne->pays;
                                $valeur = $ligne->pays;
                                if($cle == $pays)
                                    echo"<option value=$cle selected='selected'>$valeur</option>";
                                else
                                    echo"<option value=$cle>$valeur</option>";
 
                                    $ligne = $result->fetch_object();
                            }
                            ?>
                        </select>
                    </td>
                </tr>
            </table>
            <br /><br />
            <?php
            if(isset($_POST['pays']) && $_POST['pays']!="")
            {
                $requete = "select * from sejour where pays='$pays'";
                $result = $db->query($requete);
                $nbLigne = $result->num_rows;
 
                if($nbLigne == 0)
                {
                    Echo "<script language='Javascript'>";
                    Echo "<!--\n"; // le "\n" permet de passer une ligne en Javascript
                    Echo "alert('Il n'y a pas de séjour pour le pays sélectionné !');\n";
                    Echo "// -->\n";
                    Echo "</script\n>";
                }
                else
                {
                    ?>
                    <table class="quadrille">
                        <tr>
                            <th>Intitulé</th>
                            <th>Pays</th>
                            <th>Prix</th>
                            <th>Votre choix</th>
                        </tr>
                        <?php
                            $ligne = $result->fetch_object();
                            while($ligne!= false)
                            {
                                $intitule = $ligne->intitule;
                                $prix = $ligne->prix;
                                $id = $ligne->id;
 
                                // on affiche le contenu de l'enregistrement obtenu
                                Echo "<tr><td>".$intitule."</td>";
                                Echo "<td>".$pays."</td>";
                                Echo "<td>".$prix."</td>";
                                Echo "<td><a href='sejourModCtlUpdate.php?id=$id'>Cliquer ici pour modifier le séjour</td></tr>";
 
                                $ligne= $result->fetch_object();
                            }
                        ?>  
                    </table>
                    <?php
                }
            }
            ?>
    </div>
    <?php
    // pied de page
    include("includes/piedPage.php");
    ?>
    </body>
</html>
script contrôle update: script qui affiche le formulaire avec les caractérisitque du séjour:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <meta http-equiv="Content-Language" content="fr" />
    <link rel="stylesheet" href="css/stylesMiseEnPage.css" type="text/css" />
    <title>Formulaire de modification de séjour</title>
    <script></script>
</head>
<body>
    <?php
    include("includes/accesBDD.php");
    include("includes/utilitaires.php");
    // début de page et bandeau
    include("includes/debutPageEtBandeau.php");
    // ajout menu
    include("includes/menuAdmin.php");
    // ajout actualités
    include("includes/actualite.php"); 
    ?>
    <div id="corps">
        <?php
        if (count($_GET) >0)
        {
            // --------------------------------------------------------------
            // le script est appelé par le script sejourModificationParPays
            // --------------------------------------------------------------
            // on récupère le n° du séjour passé dans l'url (?id=valeur)
            $sejour = $_GET['id'];
 
            // mise en forme de la requête 
            $requete = "select * from sejour where id=".$sejour;
            // appel de la fonction qui permet d’exécuter la requête contenue dans $requete
            $result =$db ->query($requete);
            // num_rows permet d'obtenir le nombre d'enregistrements retournés par la requête
            $nbLigne= $result->num_rows;
 
            // s'il n'y a pas de séjour, on affiche un message d'erreur
            if ($nbLigne == 0)
                echo ("<script>alert('le séjour n'existe pas ! ')</script>");
            else
            {
                $ligne = $result->fetch_object() ;
                $intitule = $ligne->intitule;
                $prix = $ligne->prix;
                $pays = $ligne->pays;
            }
        }
        if (isset($_POST["valider"]))
        {
        // -------------------------------------------------------------------------------------------------------------------------
        // l'utilisateur a appuyé sur le bouton valider : les données modifiées sont contrôlées et l' enregistrement est mis à jour
        //--------------------------------------------------------------------------------------------------------------------------
            // création du tableau qui va contenir les erreurs de validité
            $tableauErreurs = array();
 
            // appel de la fonction php supEspaceDebutFin 
            supEspaceDebutFin($_POST);
            var_dump($_POST);
            // appel de la fonction extract 
            extract ($_POST);
 
            // Appel de la fonction qui vérifie les valeurs du formulaire
            verifierSejour($intitule, $pays, $prix, $tableauErreurs);
            if (nbErreurs($tableauErreurs)==0)
            {
                // mise à jour du séjour si les données sont correctes
                $requete = "update sejour set intitule ='$intitule', prix=$prix, pays='$pays' where id=$sejour";
                echo $requete;
                $result =$db ->query($requete);
                // $result contient le nombre d'enregistrements mis à jour
                if ($result == 1)
                {
                    // on affiche un message indiquant que la mise à jour a bien été effectuée
                    echo ("<script>alert('Le séjour a été mis à jour ! ')</script>");
                    ?>
                    <!-- affichage des boutons pour réaliser une autre modification -->
                    <p class="centre">
                        <a href="sejourModificationMenu.php" >
                            <input type="button" value="Retourner au menu de modification des séjours"/>
                        </a><br/><br/>
                        <a href="sejourModificationParPays.php" >
                            <input type="button" value="Revenir au formulaire de sélection d'un pays"/>
                        </a>
                    </p>
                    <?php
                }
                else
                {
                    // si la requête ne retourne aucune ligne, on affiche un message d'erreur
                    echo ("<script>alert('problème de mise à jour : accès au séjour impossible!')</script>");
                }
            }
        }
        if (count($_GET) >0 || (isset($tableauErreurs) && nbErreurs($tableauErreurs)>0))
        {
            // affichage du formulaire avec les caractéristiques du séjour
            // clic sur le séjour ou erreur de modification
            // ------------------------------------------------------------
            ?>
            <h1 class="titrecentre">Modification des caractéristiques des séjours</h1>
            <form id="sejourmodif" action="sejourModCtlUpdate.php" method="POST" onSubmit="return verifierSejour();">
 
                <?php
                include("sejourFormulaire.php");
                ?>
                <!-- le numéro du séjour doit être passé pour la mise à jour : il est passé en champ caché -->
                <input type="hidden" name="sejour" id="sejour" size= "30" value="<?php echo ($sejour) ;?>"/>
            </form>
            <?php
        }
        ?>
        <?php
            // gestion des erreurs s'il y a lieu
            //------------------------------------
            if (isset($tableauErreurs) && nbErreurs($tableauErreurs)>0)
            {
                // affichage d'un message contenant les erreurs rencontrées 
                $lstErr = listeErreurs($tableauErreurs);
                echo("<span class='erreur'>".$lstErr."</span>");
            }
        ?>
</div>
 
<?php
// pied de page 
include("includes/piedPage.php");
?>
 
</body>
</html>
l'erreur se trouve dans le second script dans la requete update. elle ne récupère pas l'identifiant du sejour à modifier qui est en mode get

merci de votre aide