Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/12/2010, 10h39   #1
Futur Membre du Club
 
Homme
Développeur Web
Inscription : novembre 2007
Messages : 185
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2007
Messages : 185
Points : 15
Points : 15
Par défaut moteur de recherche dynamique avec HTTP Request

Bonjour à tous,

J'essay actuellement de créer un moteur de recherche dynamique avec HTTP Request.
Le problème est que lorsque je saisie un mot le navigateur maffiche "objet non trouvé "

Voici comment j'i organisé mon code:

Formulaire html :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
<head>
<title>Mes posts</title>
<script src="livesearch.js"></script>
</head>
 
<body onload="liveSearchInit()">
<form name="searchform">
  Recherche rapide :
  <input type="text" id="livesearch", name="q" onkeypress="liveSearchStart();" />
</form>
<div id="LSResult" style="display: none;"><div id="LSShadow"></div></div>
</body>
Ma page php:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
include'connexion_bdd.php';
$recherche = $_GET['q'];
 
 
$req = "SELECT Profil_NT FROM table_profil_access WHERE Profil_NT LIKE '%$recherche%';"; 
$res = mysql_query($req);
if ($res) {
  while ($row = mysql_fetch_row($res)) {
    echo "<a href='/?p=$row[0]'>$row[1]</a><br />";
    }
  }
kamnouz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2010, 10h50   #2
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 802
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 802
Points : 35 807
Points : 35 807
Code :
<input type="text" id="livesearch", name="q" onkeypress="liveSearchStart();" />
Que vient faire la virgule dans cette ligne ?
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2010, 10h57   #3
Futur Membre du Club
 
Homme
Développeur Web
Inscription : novembre 2007
Messages : 185
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2007
Messages : 185
Points : 15
Points : 15
Effectivement j'ai laissé trainer une virgule !

Mais le probléme est toujour le même
kamnouz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2010, 11h01   #4
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 802
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 802
Points : 35 807
Points : 35 807
Code :
<script src="livesearch.js"></script>
Il nous faudrait le code JavaScript pour pouvoir essayer de trouver le problème...
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/12/2010, 11h03   #5
Futur Membre du Club
 
Homme
Développeur Web
Inscription : novembre 2007
Messages : 185
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2007
Messages : 185
Points : 15
Points : 15
Voici ma page javascript

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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
 
var liveSearchReq = false;
var t = null;
var liveSearchLast = "";
 
var isIE = false;
// on !IE we only have to initialize it once
if (window.XMLHttpRequest) {
	liveSearchReq = new XMLHttpRequest();
}
 
function liveSearchInit() {
 
	if (navigator.userAgent.indexOf("Safari") > 0) {
		document.getElementById('livesearch').addEventListener("keydown",liveSearchKeyPress,false);
//		document.getElementById('livesearch').addEventListener("blur",liveSearchHide,false);
	} else if (navigator.product == "Gecko") {
 
		document.getElementById('livesearch').addEventListener("keypress",liveSearchKeyPress,false);
		document.getElementById('livesearch').addEventListener("blur",liveSearchHideDelayed,false);
 
	} else {
		document.getElementById('livesearch').attachEvent('onkeydown',liveSearchKeyPress);
//		document.getElementById('livesearch').attachEvent("onblur",liveSearchHide,false);
		isIE = true;
	}
 
	document.getElementById('livesearch').setAttribute("autocomplete","off");
 
}
 
function liveSearchHideDelayed() {
	window.setTimeout("liveSearchHide()",400);
}
 
function liveSearchHide() {
	document.getElementById("LSResult").style.display = "none";
	var highlight = document.getElementById("LSHighlight");
	if (highlight) {
		highlight.removeAttribute("id");
	}
}
 
function liveSearchKeyPress(event) {
 
	if (event.keyCode == 40 )
	//KEY DOWN
	{
		highlight = document.getElementById("LSHighlight");
		if (!highlight) {
			highlight = document.getElementById("LSShadow").firstChild.firstChild;
		} else {
			highlight.removeAttribute("id");
			highlight = highlight.nextSibling;
		}
		if (highlight) {
			highlight.setAttribute("id","LSHighlight");
		} 
		if (!isIE) { event.preventDefault(); }
	} 
	//KEY UP
	else if (event.keyCode == 38 ) {
		highlight = document.getElementById("LSHighlight");
		if (!highlight) {
			highlight = document.getElementById("LSResult").firstChild.firstChild.lastChild;
		} 
		else {
			highlight.removeAttribute("id");
			highlight = highlight.previousSibling;
		}
		if (highlight) {
				highlight.setAttribute("id","LSHighlight");
		}
		if (!isIE) { event.preventDefault(); }
	} 
	//ESC
	else if (event.keyCode == 27) {
		highlight = document.getElementById("LSHighlight");
		if (highlight) {
			highlight.removeAttribute("id");
		}
		document.getElementById("LSResult").style.display = "none";
	} 
	//BACKSPACE - required for IE
	else if (event.keyCode == 8 && isIE) {
		liveSearchStart();
	}
}
function liveSearchStart() {
	if (t) {
		window.clearTimeout(t);
	}
	t = window.setTimeout("liveSearchDoSearch()",200);
}
 
function liveSearchDoSearch() {
 
	if (typeof liveSearchRoot == "undefined") {
		liveSearchRoot = "";
	}
	if (typeof liveSearchRootSubDir == "undefined") {
		liveSearchRootSubDir = "";
	}
	if (typeof liveSearchParams == "undefined") {
		liveSearchParams2 = "";
	} else {
		liveSearchParams2 = "&" + liveSearchParams;
	}
	if (liveSearchLast != document.forms.searchform.q.value) {
	if (liveSearchReq && liveSearchReq.readyState < 4) {
		liveSearchReq.abort();
	}
	if ( document.forms.searchform.q.value == "") {
		liveSearchHide();
		liveSearchLast = "";
		return false;
	}
	if (window.XMLHttpRequest) {
	// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		liveSearchReq = new ActiveXObject("Microsoft.XMLHTTP");
	}
	liveSearchReq.onreadystatechange= liveSearchProcessReqChange;
	liveSearchReq.open("GET", liveSearchRoot + "/livesearch.php?q=" + document.forms.searchform.q.value + liveSearchParams2);
	liveSearchLast = document.forms.searchform.q.value;
	liveSearchReq.send(null);
	}
}
 
function liveSearchProcessReqChange() {
 
	if (liveSearchReq.readyState == 4) {
		var  res = document.getElementById("LSResult");
		res.style.display = "block";
		var  sh = document.getElementById("LSShadow");
 
		sh.innerHTML = liveSearchReq.responseText;
 
	}
}
 
function liveSearchSubmit() {
	var highlight = document.getElementById("LSHighlight");
	if (highlight && highlight.firstChild) {
		window.location = liveSearchRoot + liveSearchRootSubDir + highlight.firstChild.nextSibling.getAttribute("href");
		return false;
	} 
	else {
		return true;
	}
}
 
 
 
 
/* preview comment code */
 
 
function preview(request){
    //
    var previewNode = $('previewComment');
 
    if (!previewNode) {
        var lastComment = $('bx_foo');
        var previewNode = document.createElement("div");
        previewNode.id = 'previewComment';
        previewNode.className = 'post_content';
        previewNode = lastComment.parentNode.insertBefore(previewNode,lastComment.nextSibling);
 
    }
    previewNode.innerHTML = request.responseText;
}
 
 
function previewSubmit(test) {
    var name = document.getElementById('name').value;
    var mail = document.getElementById('email').value;
    var uri = document.getElementById('openid_url').value;
    var text = document.forms['bx_foo']['comments'].value;
 
    var f = document.forms['commentForm'];
	if (typeof liveSearchRoot == "undefined") {
		var liveSearchRoot = "/";
	}
 
    body = "mail=" + encodeURIComponent(mail) + "&uri="+ encodeURIComponent(uri) + "&text="+ encodeURIComponent(text) + "&name="+ encodeURIComponent(name);
    new ajax (liveSearchRoot + 'inc/bx/php/preview.php', {
        postBody: body,
                method: 'post',
                onComplete: preview
    });
 
 
    return false;
}
 
function prepareCommentSubmit() {
	var sub = document.getElementById('bx_plugins_blog_all');
	var hid = document.getElementById('bx_plugins_hidden_submit_replacement');
	sub.name = "foo";
	sub.disabled = true;
	sub.value = "Sending ...";
	hid.name = "bx[plugins][blog][_all]";
	return true;
}
kamnouz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h54.


 
 
 
 
Partenaires

Hébergement Web