Bonjour,
je cherche a faire un sysyteme AJAX sur mon site, et j'utilise de l'ASP pour dialoguer avec ma base de donnée
En fait j'ai une liste deroulante sur ma page principale, qui me permet de choisir quelle table je voudrais afficher, ensuite grace a l'AJAX j'affiche cette table dans la meme page
j'ai donc une liste deroulante avec un evenement dessus qui envoie a cette fonction :
là j'envoie le nom de ma table au fichier DisplayTable.asp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 function RunTable(){ xhr_url = "DisplayTable.asp"; var table = document.getElementById("tables").value; if(table!=""){ if ( window.XMLHttpRequest ) { // Objet XmlHttpRequest pour les moteurs GECKO xhr_object = new XMLHttpRequest(); } else if ( window.ActiveXObject ) { // Objet XmlHttpRequest pour Internet Explorer xhr_object = new ActiveXObject( 'Microsoft.XMLHTTP' ); } else { // Navigateur non-compatible alert( 'Votre navigateur ne supporte pas les objets XMLHTTPRequest...' ); return; } xhr_url += "?table="+table; xhr_object.open("GET", xhr_url, true); xhr_object.onreadystatechange = ReceiveTable; // On envoi la requete xhr_object.send(null); } }
le voila :
seulement le probleme c'est que ma page principale ne reconnais pas que j'envoie un document XML
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <% @LANGUAGE="VBSCRIPT" %> <% 'Connexion à la base de données' dbPath = Server.MapPath("mabase.mdb") Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};" _ & " DBQ=" & dbPath table = request("table") result = "" SQL = "Select * From ["&table&"]" Set RS = Server.Createobject("ADODB.Recordset") RS.Open SQL,Conn , 3, 3 if table = "Demande" then result = "<?xml version='1.0' encoding='iso-8859-1' ?>" result = result & "<table>"&table&"</table>" result = result & "<demandes>" while not RS.eof numero = RS("numero_demande") date_demande = RS("date_demande") motif = RS("motif_demande") result = result & "<demande>" result = result & "<numero>" result = result & numero result = result & "</numero>" result = result & "<date_demande>" result = result & date_demande result = result & "</date_demande>" result = result & "<motif>" result = result & motif result = result & "</motif>" RS.movenext wend result = result & "</demande>" result = result & "</demandes>" end if Response.Write result RS.close %>
pourtant je fait :
mais il me met une erreur sur cette derniere ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 var XMLTable = xhr_object.responseXML; var table = XMLTable.getElementsByTagName('table')[0].firstChild.nodeValue
je poste sur le forum ASP parce que je pense que mon XML n'est pas correctement fait, car avec du texte simple ça marche bien en faisait un responseText
j'ai deja fait ce genre de truc avec du php et je mettais
mais je ne voit pas la correspondance en ASP
Code : Sélectionner tout - Visualiser dans une fenêtre à part header("Content-type: text/xml");
Partager