Pb récupération données liste déroulantes

Laëtitia -  
 Laëtitia -
Bonjour,
j'ai trouvé sur un site le script pour faire des listes déoulantes liées, j'ai réussi à les mettre en marche mais mon souci c'est que je veux récupérer les données de ces listes déroulantes pour pouvoir supprimer des champs dans une table. J'ai mis <form action="reservation_supprbis.php"> un peu partout mais rien y fait !
J'espère que certains pourront m'aider !
Voila mon code :
<?php
session_start();
//si la session n'existe pas, redirection vers index.php
if (!isset($_SESSION['nom']))
{
Header('Location: index.php');
}
//on affiche la page voulue
else
{
?>

<HTML>
<HEAD>
<TITLE>Suppression réservation</TITLE>
<link rel="stylesheet" href="include/style.css">

<script type='text/javascript'>
function getXhr(){
var xhr = null;
if(window.XMLHttpRequest) // Firefox et autres
xhr = new XMLHttpRequest();
else if(window.ActiveXObject){ // Internet Explorer
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
xhr = false;
}
return xhr;
}

/**
* Méthode qui sera appelée sur le click du bouton
*/
function go(){
var xhr = getXhr();
// On définit ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function(){
// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
if(xhr.readyState == 4 && xhr.status == 200){
leselect = xhr.responseText;
// On se sert de innerHTML pour rajouter les options a la liste
document.getElementById('reservation').innerHTML = leselect;
}
}

// Ici on va voir comment faire du post
xhr.open("POST","date.php",true);
// ne pas oublier ça pour le post
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
// ne pas oublier de poster les arguments
// ici, l'id de la stb
sel = document.getElementById('stb');
idstb = sel.options[sel.selectedIndex].value;
xhr.send("idstb="+idstb);
}
</script>

</HEAD>
<BODY>

<div id="ecriture2">
Suppression de réservation <br/><br/>
</div>

<form>

STB :
<select name='stb' id='stb' onchange='go()'>
<option value='-1'>Choisir une STB</option>
<?php
include ("/var/www/function.php");
require_once ("/var/www/include/auth.inc");

$mysqlLink = connexion(HOST,USER,PWD,BDD);

$res = mysql_query("SELECT DISTINCT idstb, stbName FROM stb, reservation, campagne, firmware
WHERE reservation.campagne_idcampagne=campagne.idcampagne
AND campagne.firmware_idfirmware=firmware.idfirmware
AND firmware.stb_idstb=stb.idstb");
while($row = mysql_fetch_assoc($res))
{
echo "<option value='".$row["idstb"]."'>".$row["stbName"]."</option>";
}
?>
</select>
<br/><br/>
Date et heure de début :
<div id='reservation' style='display:inline'>
<select name='reservation'>
<option value='-1'>Choisir une STB avant !</option>
</select>
</div>

</form>

<?php
echo'<br/><br/>';
echo '<input type="submit" value="Valider"/>';
echo '<input type="reset" value="Annuler"/><br/><br/>';
echo'<br/>';
echo'<div id="ecriture3"';
echo "<a href='reservation.php'>• Retour au menu des réservations •</a>";
echo'</div>';

}
?>
</BODY>
</HTML>

et voila ma page date.php :
<?php
session_start();
//si la session n'existe pas, redirection vers index.php
if (!isset($_SESSION['nom']))
{
Header('Location: index.php');
}
//on affiche la page voulue
else
{
?>
<HTML>
<HEAD>
<TITLE></TITLE>
<link rel="stylesheet" href="include/style.css">
</HEAD>
<BODY>
<?php
echo "<select name='reservation'>";
if(isset($_POST["idstb"]))
{
include ("/var/www/function.php");
require_once ("/var/www/include/auth.inc");
$mysqlLink = connexion(HOST,USER,PWD,BDD);
$res = mysql_query("SELECT date_start FROM reservation, campagne, firmware, stb
WHERE reservation.campagne_idcampagne=campagne.idcampagne
AND campagne.firmware_idfirmware=firmware.idfirmware
AND firmware.stb_idstb=stb.idstb
AND stb.idstb=".$_POST["idstb"]."");
while($row = mysql_fetch_assoc($res))
{
echo "<option value='".$row["date_start"]."'>".$row["date_start"]."</option>";
}
}
echo "</select>";

}
?>
</BODY>
</HTML>

Merci beaucoup à ceux qui vont m'aider !
A voir également:

3 réponses

Mopra-L Messages postés 150 Statut Membre 6
 
Bonjour,

Je n'ai pas trop regardé le code, mais concernant le form :

Il faut mettre les balises <form> et </form> de facon a entourer le select

<form>
<select>
<option />
<option />
</select>
</form>


Ensuite, il ne pas oublier d'indiquer la méthode d'envoi de formulaire :

<form action="reservation_supprbis.php" method="POST"> 


Enfin, il faut un moyen d'envoyer le formulaire, avec un input type submit, qui est la solution la plus simple (a placer entre les balises form aussi)

<input type="submit" value="Valider">


Voila, ca t'aide un peu ?
0
Laëtitia
 
Merci pour ton aide mais ça j'ai déjà essayer, même à plusieurs endroits du code et rien n'y fait =(
0
Mopra-L Messages postés 150 Statut Membre 6
 
Comment ca ? Le bouton submit ne mène a rien ?

La variable POST correspondante n'existe pas ?

Ou est-ce que ca coince, en fait ?
0
Petit Raptor Messages postés 214 Statut Membre 1
 
pourrais-tu nous mettre un lien vers ta page pour voir ce que cela donne sur ton serveur Web si tu en as un bien sur.

Sinon, je vois que tu met tes options de select directement dans ton code PHP en echo.

Les autres ont raison, qu'est-ce qu'il ne marche pas concrètement ?

Qu'est-ce que cela t'affiche ?
0
Laëtitia
 
quand j'appuie sur mon bouton envoyer, rien ne se passe, j'ai juste mes 2 listes déroulantes et c'est tout !
sinon je suis dsl mais je ne peux pas faire de liens, c'est pas un site web que je fais c'est juste une application en locale !
0