Bonjour,
J'ai un soucis avec Ajax, je vous livre ci plus bas mon code.
Lorsque que une option du 1er select (departement) contient un caractére spécial, le second select (element) affiche une liste vide.
Je pense que le soucis viens de Ajax qui affiche certainement un ? dans un losange dans ma variable.
Quelqu'un aurait une solution pour forcer Ajax a passer mes accents ?
Code :
- <?php
- include 'connection.php';
- $element = $_GET['element'];
- $resultat = mysql_query('SELECT * FROM element WHERE eleNom=\''.$element.'\'');
- mysql_query("TRUNCATE tabletmp" );
- while($data=mysql_fetch_array($resultat)){
- $el = $data['eleNom'];
- mysql_query("INSERT INTO tabletmp VALUES('$el')" );
- }
- mysql_close();
- ?>
|
Code :
- <?php
- header('Content-Type: text/html; charset=ISO-8859-1');
- echo "<select name='element'>";
- if(isset($_POST['idDept'])){
- $departement = $_POST['idDept'];
- include 'connection.php';
- $res = mysql_query('SELECT * FROM element WHERE depNom=\''.$departement.'\' ORDER BY eleNom');
- while($data = mysql_fetch_array($res)){
- $nom = $data['eleNom'];
- echo '<option value="'.$nom.'">'.$nom.' (Reste : ' .$data['eleEtat']. ')</option>';
- }
- }
- echo '</select>';
- ?>
|
------------- Edit -------------
J'ai ajouter dans la page gestionStockAjax.php
Code :
- $departement = mb_convert_encoding($_POST['idDept'], "ISO-8859-1", "UTF-8" );
|
Message édité par forestguns le 14-04-2011 à 15:49:57