[AJAX] actualisation d'un champ select avec ajax et prototype
Bonjour, je suis soumis à un cas d'école, mais étant débutant je patauge un peu.
J'ai un fichier php avec un select, une fonction ajax qui me permet d'actualiser un deuxième select en faisant appel à un deuxième fichier php qui s'actualise en fonction du choix du select un
structure du fichier php principal :
Code:
1 2 3 4 5 6 7 8
| <select id ="CLIENT" onchange="montrercontactsdevis()">
<option value="client1">1</option>
<option value="client2">2</option>
<option value="client3">3</option>
</select>
<div id="Contact1">
</div> |
fonction ajax appelée :
Code:
1 2 3 4 5 6 7
| function montrercontactsdevis()
{ new Ajax.Updater('Contact1', 'listes/contactdevis.php' ,
{ method: 'get',
parameters: { client: $F('CLIENT') }
}
);
}; |
fichier php appelé par la fonction ajax : 'listes/contactdevis.php'
Code:
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
| <?php
require_once('../Connections/webgest.php');
mysql_select_db($database_webgest, $webgest);
$clicli = $_GET['client'];
$query_CONTACT = "SELECT * FROM contacts WHERE CLIENT='$clicli' AND CORBEILLE !='1'";
$CONTACT = mysql_query($query_CONTACT, $webgest) or die(mysql_error());
$row_CONTACT = mysql_fetch_assoc($CONTACT);
?>
<select id="lecontact">
<?php
do {?>
<option value="<?php echo $row_CONTACT['NUMCONTACT']; ?>"><?php echo $row_CONTACT['PRENOM']." ".strtoupper($row_CONTACT['NOM']); ?></option>
<?php ; }
while ($row_CONTACT = mysql_fetch_assoc($CONTACT));
?>
</select> |
Bilan de la chose :
mon deuxième select s'actualise bien à l'écran, j'ai bien une mise à jour qui est effectuée, et à l'écran tout fonctionne. Sauf qu'après l'actualisation du deuxième select, mon code source de la page principale est inchangé, et je ne peux envoyer la valeur du select "lecontact" via un formulaire, puisqu'il n'apparait pas dans le code source.
J'imagine que la structure n'est pas correcte, mais je n'ai pas trop d'idée, et je ne sais pas quelle est la bonne méthode à utiliser. Et vous ?
Merci