[AJAX] encoding liste dynamique
salut tt mes amis,voila téléchargé deux script type AJAX d'un site et je l'ai adapté dans mon programme, mais mon pb c'est que j'ai une base de données en arabe avec le charset=windows-1256 tandisque ce code utilise le utf-8, alors mon affichage c'est du chinoi!! svp pouvez vous m'indiquer où exactement je doit changer le utf-8 par charset=windows-1256?
sachant je ne maitrise pas trop le java script (alors indiquez moi exactement les ligne a toucher.
et merci d'avance
voila le premier script (ajaxlivre.php):
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
<?php
echo "<select name='livres'>";
if(isset($_POST["idAuteur"])){
mysql_connect("localhost","root","");
mysql_select_db("testlistesliees");
$res = mysql_query("SELECT id,titre FROM livre
WHERE idAuteur=".$_POST["idAuteur"]." ORDER BY titre");
while($row = mysql_fetch_assoc($res)){
echo "<option value='".$row["id"]."'>".$row["titre"]."</option>";
}
}
echo "</select>";
?> |
le programme principal est index.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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
<html>
<head>
<title>Tutoriel Ajax (XHTML + JavaScript + XML)</title>
<script type='text/javascript'>
var xhr = null;
function getXhr(){
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;
}
}
/**
* Méthode qui sera appelée sur le click du bouton
*/
function go(){
getXhr();
// On défini 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('livres').innerHTML = leselect;
}
}
// Ici on va voir comment faire du post
xhr.open("POST","ajaxLivre.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 l'auteur
sel = document.getElementById('auteurs');
idaut = sel.options[sel.selectedIndex].value;
xhr.send("idAuteur="+idaut);
}
</script>
</head>
<body>
<form>
<fieldset style="width: 500px">
<legend>Liste liées</legend>
<label><br>
<p align="right">
<input type="submit" value="Chercher num_cin">
<input value="" name="num_cin" size="8" maxlength="8">
: رقم بطاقة التعريف الوطنية
</p>
<br>
Auteurs</label>
<select name='auteurs' id='auteurs' onchange='go()'>
<option value='-1'>Aucun</option>
<?
mysql_connect("localhost","root","");
mysql_select_db("testlistesliees");
$res = mysql_query("SELECT * FROM auteur ORDER BY nom");
while($row = mysql_fetch_assoc($res)){
echo "<option value='".$row["id"]."'>".$row["nom"]."</option>";
}
?>
</select>
<label>Livres</label>
<div id='livres' style='display:inline'>
<select name='livres' id="livres">
<option value='-1'>Choisir un auteur</option>
</select>
</div>
</fieldset>
</form>
</body>
</html> |