Bonjoour,
j'ai les codes suivants qui fonctionnent bien, mais qui recherhent uniqument sur le premier mot de la base de données :
Par exemple, si dans ma base j'ai dans la cellule "nom" les mots : jules ferry
et si je tape 'jules' : ok il me trouve bien "jules ferry" mais si je tape 'ferry' il ne me trouve rien...

Merci de votre aide.
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
 
<script type="text/javascript">
	function lookup(inputString) {
		if(inputString.length == 0) { // si le champs txte est vide
			$('#suggestions').hide(); // on cache les suggestions
		} else { // sinon
			$.post("ajax_ev.php", {queryString: ""+inputString+""}, function(data){ 
			// on envoie la valeur du champ texte dans la variable post queryString au fichier ajax_ev.php
				if(data.length >0) {
					$('#suggestions').show(); // si il y a un retour, on affiche la liste
					$('#autoSuggestionsList').html(data); // et on remplit la liste des données
				}
			});
		}
	}
	function fill(thisValue) { // remplir le champ texte si une suggestion est cliquée
		$('#inputString').val(thisValue);
		setTimeout("$('#suggestions').hide();", 200);
	}
	$(document).ready( function () {
		$("input#inputString").keyup( function() { // si on presse une touche du clavier en étant dans le champ texte qui a pour id inputString
			lookup($(this).val()) 
		});
		$("input#inputString").blur( function() { // si le champ texte perd le focus
			fill() 
		});
	});
</script>
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
<form method="post" action="recherche_interne.php">
<fieldset>
<legend> &nbsp; Recherche par mot clé &nbsp; </legend>
<label>Entrer le nom de l'artiste ici :</label>
<input type="text" tabindex ="16" name="recherche" class="ev" value="" id="inputString" /><!--  champ texte à analyser pour les suggestions -->
<div class="suggestionsBox" id="suggestions" style="display: none;"> <!-- bloc contenant les eventuelles suggestions -->
<div class="suggestionList" id="autoSuggestionsList"><!-- liste contenant les suggestions -->
</div>
</div>
<br />
<p><b>ne pas indiquer les pronoms comme "Le" "Les" "The" ..merci.</b></p>
<br />
</fieldset>
<input type="submit" tabindex ="17" value="Rechercher" />
</form>
traitement :
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
52
<?php
require("configuration.php");
$sql = connect_sql();
mysql_query("SET NAMES utf8");
// si une variable queryString a été posté
if(isset($_POST['queryString'])) 
        {
                // si la longueur du contenu de la variable est superieur à 0
                $queryString = mysql_real_escape_string($_POST['queryString']);
                if(strlen($queryString) >0) 
                {
                        // requete sql à personnaliser pour correspondre à votre base de données
                        $remplacements = array('à' => 'a','é' => 'e','è' => 'e','ù' => 'u','ê' => 'e','ô' => 'o' );
                        $saisie_avant = strtr($queryString, $remplacements);
                        //ayant tout des mots dans leurs informations
                        // fonction pour nettoyer la chaine de caracteres
                        function trimUltime($chaine)
                        {
                                $chaine = trim($chaine);
                                $chaine = str_replace("\t", " ", $chaine);
                                $chaine = eregi_replace("[ ]+", " ", $chaine);
                                return $chaine;
                        }
                        $saisie = trimUltime($saisie_avant);
                        $mots = explode(' ',$saisie);//sépare l'expression en mots cles
                        foreach($mots as $mot)
                        {
                                $result = mysql_query("SELECT * FROM evenement WHERE nom LIKE '$mot%' LIMIT 15");
                                if($result)
                                {                               
                                        while($nom = mysql_fetch_array($result))
                                        {
                                                // on affiche les resultats dans un element de liste en ajoutant la fonction fill sur l'evenenement onClick
                                                echo '<li onClick="fill(\''.$nom["nom"].'\');">'.$nom["nom"].'</li>';
                                        }
                                }
                                else
                                {
                                        echo 'Il y a un probleme avec la requete sql.';         
                                }
                        }
                }               
                else
                {
                        echo 'Il y a un probleme avec la requete sql.'; 
                } 
        }
        else 
        {
                echo 'Il ne devrait pas avoir un accès direct à ce script !!!';       
        }
?>