Bonjour,

J'ai un code qui a été réalisé par une autre personne et qui ne fonctionne pas correctement. Mais je ne sais pas ou ce trouve l'erreur.

Voici mon code

L'autocomplete doit ce faire sur ces champs la

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
 
	<tr id="filmRow" class="gray">
		<th>Vos 5 films pr&eacute;f&eacute;r&eacute;s : <br/>(Tappez les premiere lettres)</th>
		<td>
			<input type="text" name="film1" id="film1" onkeyup="init_autocomplete();" onfocus="setFocusMul('film',1)" onblur="setBlurMul('film',1,true)" class="inputBlur"/><div class="autocomplete" id="autocomplete_film1"></div><br/>
			<input type="text" name="film2" id="film2" onkeyup="init_autocomplete();" onfocus="setFocusMul('film',2)" onblur="setBlurMul('film',2,true)" class="inputBlur"/><div class="autocomplete" id="autocomplete_film2"></div><br/>
			<input type="text" name="film3" id="film3" onkeyup="init_autocomplete();" onfocus="setFocusMul('film',3)" onblur="setBlurMul('film',3,true)" class="inputBlur"/><div class="autocomplete" id="autocomplete_film3"></div><br/>
			<input type="text" name="film4" id="film4" onkeyup="init_autocomplete();" onfocus="setFocusMul('film',4)" onblur="setBlurMul('film',4,true)" class="inputBlur"/><div class="autocomplete" id="autocomplete_film4"></div><br/>
			<input type="text" name="film5" id="film5" onkeyup="init_autocomplete();" onfocus="setFocusMul('film',5)" onblur="setBlurMul('film',5,true)" class="inputBlur"/><div class="autocomplete" id="autocomplete_film5"></div><br/>
		</td>
		<td>
			<div class="verif" id="verif_film1"></div>
			<div class="verif" id="verif_film2"></div>
			<div class="verif" id="verif_film3"></div>
			<div class="verif" id="verif_film4"></div>
			<div class="verif" id="verif_film5"></div>
		</td>
	</tr>

Ma page qui fait l'autocomplet

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
if(isset($_GET['ou']) && isset($_POST[$_GET['ou']])){
	$act = new film();
	$films = $act->autocomplete($_POST[$_GET['ou']]);
	//echo sizeof($films);
	$retour = '<ul>';
	for($i = 0 ; $i<sizeof($films) ; $i++){
		$retour .= '<li>'.ucfirst(htmlentities($films[$i]['titre'])).'</li>';
	}
	$retour .= '</ul>';
}
echo $retour;
et pour finir mon fichier js le problème doit être la dedans

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
 
function init_autocomplete(lefilm,laserie,lacteur){
	film = lefilm;
	serie = laserie;
	acteur = lacteur;
 
	for(i=1;i<film+1;i++){
		$('film'+i).onkeyup = action_film;
		alert($('film'+i));
	}
	$('serie'+serie).onkeyup = action_serie;
	$('acteur'+acteur).onkeyup = action_acteur;
}
 
function action_film(event){
	var event = event || window.event;
	var id = (event.target) ? event.target.id : event.srcElement.id;
	if(event.keyCode != 13){
		bad(id);
	}
	new Ajax.Autocompleter(id, 'autocomplete_'+id, 'script/php/menu.php?module=autocomplete_film&ou='+id, {afterUpdateElement:elementUpdated});
}
Faudrai déjà mettre l'autocomple en POST puis voir pour la suite car la quand je tape les lettre dans le champs cela ne m'affiche rien.

Merci