Bonjour a tous !
Je suis actuellement en train de développer une application pour mon sujet de stage et je bloque, c'est donc pour cela que je viens faire appel à vôtre savoir
Avant de poster mon code, je vous explique le principe.
J'ai une liste déroulante (Liste 1) que je remplie avec des données présentes dans ma BDD MySQL ( Les noms des personnes inscrites ). Avec ceci j'ai deux boutons (un bouton "Je suis là" et un autre "Je m'en vais" ). Et pour finir une seconde liste (Liste 2) qui elle est vide. Lorsque je sélectionne un utilisateur dans "Liste 1" et que j'appuie sur "Je suis là", cela me bascule le nom dans la "Liste 2". Et vice versa avec le bouton "Je m'en vais". Tout cela fonctionne bien.
Mon problème : Lorsque je refresh ma page, les données que j'ai passé dans ma "Liste 2" ne s'affiche plus et réintègre ma "Liste 1" à mon grand regret
Voici le code :
<SCRIPT LANGUAGE="JavaScript">
//Ici le script javascript qui va nous permettre de gérer l'affichage des 2 listes (ListePrésent et ListeInscrit).
function Deplacer(liste1, liste2, id_action) {
if (liste1.options.selectedIndex>=0) {
var id_personne = liste1.options[liste1.options.selectedIndex].value;
i = new Option(liste1.options[liste1.options.selectedIndex].text,liste1.options[liste1.options.selectedIndex].value);
liste2.options[liste2.options.length] = i;
if ( liste1.options[liste1.options.selectedIndex] != undefined )
liste1.options[liste1.options.selectedIndex] = null;
//alert(liste1.options[liste1.options.selectedIndex].text + " - " + liste1.options[liste1.options.selectedIndex].value);
// Requête d'enregistrement par GET
var xhr_object = null;
if ( window.XMLHttpRequest )
xhr_object = new XMLHttpRequest();
else if( window.ActiveXObject )
xhr_object = new ActiveXObject("Microsoft.XMLHTTP" );
else {
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..." );
return;
}
if ( xhr_object != null ){ // Vérif si object existe
if ( id_action == 1 ){
// Quelqu'un arrive
xhr_object.open("GET", "enregistrerArriveDepart.php?id_personne=" + id_personne + "&action=arrive", false);
}
else{
// Quelqu'un part
xhr_object.open("GET", "enregistrerArriveDepart.php?id_personne=" + id_personne + "&action=part", false);
}
// Pas d'envoie de données par POST
xhr_object.send(null);
// Vérif requete GET OK
if ( xhr_object.readyState == 4 ){
// Recup réponse HTTP
reponse = xhr_object.responseText;
alert(reponse);
}
}
}
else{
alert("Vous n'avez rien selectionné" );
}
}
</SCRIPT>
<center>
<table width="700" border="0" cellspacing="1">
<tr>
<td class="tableau_rechercher">
<b>Rechercher votre nom :</b>
<br><br>
<center>
<form name="formAjout" method="get" value="text">
<?php $sql = mysql_query("SELECT * FROM personnes ORDER BY nom" );?>
<SELECT name="listeInscrit" type="text" >
<?php
while( $choixSelection = mysql_fetch_array($sql) )
{
if( !empty($_GET['id_personne']) && $_GET['id_personne'] == $choixSelection['id_personne'] ){ $selected = "selected='selected'"; } // Si l'id = celui traité on séléctionne l'option.
else { $selected = ""; } // sinon on ne séléctione pas cette option.
echo "<option value='".$choixSelection['id_personne']."' ".$selected.">".$choixSelection['nom']." ".$choixSelection['prenom']."</option>"; // on affiche l'option.
}
?>
</SELECT>
<td align="center">
<input type="button" value="Je suis là !" onClick="Deplacer(this.form.listeInscrit,this.form.listePresent, 1)" >
<br><br>
<input type="button" value="Je m'en vais !" onClick="Deplacer(this.form.listePresent,this.form.listeInscrit, 2)">
</td>
<td align="center">
<p><b>Liste des personnes présentes</b></p>
<SELECT align=top name="listePresent" size=6 style="width:200px"></SELECT>
</td>
</form>
</center>
</td>
</tr>
</table>
</center>