bonjour

Quelqu'un pourrait me dire pourquoi lorsque je sélectionne un choix dans ma liste déroulante cette dernière ne conserve pas mon choix mais revient directement sur ma première option???

j ai ce code dans mon <head>

Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 <script language="JavaScript">
<!--
function formation() {
ref = document.inscription.liste_formation.value;
window.location.href="<?php echo $_SERVER['PHP_SELF']; ?>?ref_epreuve="+ref;
}
//-->
</script>

et celui ci pour ma liste déroulante

Code html : 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
<select name="liste_formation" OnChange="formation()" class="bouton1" >
<option value=''>-= Selectioner une épreuve =-</option>
 
<?php
$link = mysqli_connect("localhost", "root", "", "ascop");
$result = mysqli_query($link, "SELECT * FROM epreuve ORDER BY Nom_epreuve ASC");
                                
        //printf("Select a retourné %d lignes.\n", mysqli_num_rows($result));
        while($data = mysqli_fetch_array($result)) {
        $Id_epreuve = $data['Id'];
        $Nom_epreuve = $data['Nom_epreuve'];
        $Id_epreuve1 = $data['Id_epreuve'];
        echo "<option value=\"$Id_epreuve\" ";
        if ('$ref_epreuve' == $Id_epreuve) {echo "Selected"; }
        echo ">$Nom_epreuve</option>";
        }
        echo"</select>";
je pense que mon probleme viendrai de cette ligne if ('$ref_epreuve' == $Id_epreuve) {echo "Selected"; }le souci c est que si je retire les ' ' de $ref_epreuve çà me dit que ma variable $ref_epreuve n est pas définie.
Quelqu' un aurait une piste svp?