Bonjour,
J'essaye de reproduire cet exemple dans un site :
http://ajax-apis.appspot.com/two-page-search-alt
Il s'agit de mettre en place une recherche google personnalisée, mais j'ai un problème quant aux accents, bien que tout fonctionne dans l'exemple et que les codes soient à mon sens similaires.
Mon formulaire:
Affichage des résultats :
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 <script type="text/javascript"> function inputFocus() { document.getElementById('query-input').style['background'] = ''; } function inputBlur() { var queryInput = document.getElementById('query-input'); if (!queryInput.value) { queryInput.style['background'] = 'white url(<a href="http://www.google.com/coop/images/google_custom_search_watermark.gif" target="_blank">http://www.google.com/coop/images/go..._watermark.gif</a>) no-repeat 0% 50%'; } } </script> <form action="./recherche" method="GET" accept-charset="UTF-8"> <input name="q" size="31" id="query-input" style="border: 1px solid rgb(126, 157, 185); padding: 2px;" onfocus="inputFocus();" onblur="inputBlur();" type="text" /> <input name="sa" value="Rechercher" type="submit" /> </form>
La recherche personnalisée fonctionne parfaitement, mais quand j'utilise le formulaire ci-dessus, les accents sont remplacés par des suites de caractères qui ne sont ensuite pas rétablies par le 'unescape'. Par exemple, une recherche sur le mot 'vélo' appellera la page 'http://www.coord21.ch/test_cmsms/recherche/?q=v%25C3%25A9lo&sa=Rechercher' et la recherche sur v%C3%A9lo ne donnera rien...
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 <script src="http://www.google.com/jsapi?key=maclé" type="text/javascript"></script> <script type="text/javascript"> google.load('search', '1'); function getQuery() { var url = '' + window.location; var queryStart = url.indexOf('?') + 1; if (queryStart > 0) { var parts = url.substr(queryStart).split('&'); for (var i = 0; i < parts.length; i++) { if (parts[i].substr(0, 1) == 'q') { return unescape(parts[i].split('=')[1].replace(/\+/g, ' ')); } } } return ''; } function onLoad() { var customSearchControl = new google.search.CustomSearchControl('005584578441396243232:epked-4geyy'); customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET); // Draw the control in content div customSearchControl.draw('cse-search-results'); // Run a query customSearchControl.execute(getQuery()); } google.setOnLoadCallback(onLoad); </script>
Est-ce que quelqu'un saurait me dire ce qui se passe ? Je mets un lien vers mon site : http://www.coord21.ch/test_cmsms/ pour les motivés.
Merci !
Partager