Bonjour,
J'aimerais qu'après un click sur une lettre, les mots de la table mot qui commencent par cette lettre et dont la valeur est affectée à la variable "recherche" s'affichent.
Il se trouve que la requête pour récupérer tous les mots fonctionne bien ( avec l'analyseur de rquêtes sql çà fonctionne bien)mais à l'affichage, il y a un problème
Voici le code javascript utilisé pour cela
La fonction javascript Req(mot, tri) est la suivante:
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 if (oXMLPersist.getElementsByTagName(recherche).length == 0 || oXMLPersist.getElementsByTagName(recherche).item(0).getAttributeNode("complet").value == "false") { /*9ème if*/ if (oXMLPersist.getElementsByTagName(recherche).length == 0) { var oLettre = oXMLPersist.createElement(recherche); oMots.appendChild(oLettre); } // fin de 9ème if else { var oLettre = oXMLPersist.selectSingleNode("//"+recherche); } // Ouverture du Recordset oRecordSet = OpenRecordset(ReqMots(recherche, tri),"BaseMediaConn"); while (!oRecordSet.eof) { // Génère les noeuds mot rattachés au noeud de recherche if (oXMLPersist.selectSingleNode("//"+typetree+"_mot[@ID='"+oRecordSet("ID")+"']") == null){ var oMot = oXMLPersist.createElement(typetree+"_mot"); var oNom = oXMLPersist.createElement("nom"); var oDef = oXMLPersist.createElement("definition"); var oCDATANom = oXMLPersist.createCDATASection(oRecordSet("NOM")); var oCDATADef = oXMLPersist.createCDATASection(oRecordSet("DEFINITION")); oMot.setAttribute("ID",oRecordSet("ID")); oNom.appendChild(oCDATANom); oDef.appendChild(oCDATADef); oMot.appendChild(oNom); oMot.appendChild(oDef); oLettre.appendChild(oMot); }//fin de 10ème if oRecordSet.MoveNext(); }//fin de while oLettre.setAttribute("complet","true"); // Fermeture du recordset CloseRecordSet(); CloseConnection();
Je suis vraiment très embêtée de ne pas pouvoir voir le résultat de ma requête à l'affichage, pourriez vous m'y aider.
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
51function ReqMots(mot, tri){ SQLStr = "SELECT ID, NOM, DEFINITION "; SQLStr += "FROM MOT "; switch (mot.toString()){ case "A" : SQLStr += "WHERE NOM LIKE '" + mot + "%' "; SQLStr += "OR NOM LIKE 'à" + mot.substring(1,mot.length) + "%' "; break; case "E" : SQLStr += "WHERE NOM LIKE '" + mot + "%' "; SQLStr += "OR NOM LIKE 'é" + mot.substring(1,mot.length) + "%' "; SQLStr += "OR NOM LIKE 'è" + mot.substring(1,mot.length) + "%' "; SQLStr += "OR NOM LIKE 'ê" + mot.substring(1,mot.length) + "%' "; break; case "I" : SQLStr += "WHERE NOM LIKE '" + mot + "%' "; SQLStr += "OR NOM LIKE 'î" + mot.substring(1,mot.length) + "%' "; break; case "O" : SQLStr += "WHERE NOM LIKE '" + mot + "%' "; SQLStr += "OR NOM LIKE 'ô" + mot.substring(1,mot.length) + "%' "; break; default : if (mot.length >= 3){ switch (Number(tri)){ case 0 : SQLStr += "WHERE NOM LIKE '" + mot + "%' "; break; case 1 : SQLStr += "WHERE NOM LIKE '%" + mot + "%' "; break; case 2 : SQLStr += "WHERE DEFINITION LIKE '%" + mot + "%' "; break; case 3 : SQLStr += "WHERE NOM LIKE '%" + mot + "%' "; SQLStr += "AND DEFINITION LIKE '%" + mot + "%' "; break; } } else { SQLStr += "WHERE NOM LIKE '" + mot + "%' "; } break; } //SQLStr += "ORDER BY NOM"; if(Debug) Message += "SQL = " + SQLStr + "<p>"; return SQLStr; }
Merci infiniment pour votre aide.
Bien cordialement.
Nathalie Harbonne
Partager